Example usage for javax.swing JOptionPane showInputDialog

List of usage examples for javax.swing JOptionPane showInputDialog

Introduction

In this page you can find the example usage for javax.swing JOptionPane showInputDialog.

Prototype

@SuppressWarnings("deprecation")
public static Object showInputDialog(Component parentComponent, Object message, String title, int messageType,
        Icon icon, Object[] selectionValues, Object initialSelectionValue) throws HeadlessException 

Source Link

Document

Prompts the user for input in a blocking dialog where the initial selection, possible selections, and all other options can be specified.

Usage

From source file:velocitekProStartAnalyzer.MainWindow.java

private int selectHowManyTimes() {
    Object[] valuesOfTimes = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
    int number = (int) JOptionPane.showInputDialog(frame, "How many times do you want to execute the process?",
            "Set number of times", JOptionPane.PLAIN_MESSAGE, null, valuesOfTimes, null);
    return number;
}

From source file:convcao.com.caoAgent.convcaoNeptusInteraction.java

@Override
public void initSubPanel() {

    jPanelMain = new javax.swing.JPanel();
    jPanel1 = new javax.swing.JPanel();
    jPanel2 = new javax.swing.JPanel();
    jLabel2 = new javax.swing.JLabel();
    jScrollPane1 = new javax.swing.JScrollPane();
    jTextPane1 = new javax.swing.JTextPane();
    renewButton = new javax.swing.JButton();
    jLabel4 = new javax.swing.JLabel();
    jTextField1 = new javax.swing.JTextField();
    jLabel5 = new javax.swing.JLabel();
    jPasswordField1 = new javax.swing.JPasswordField();
    connectButton = new javax.swing.JButton();
    jScrollPane2 = new javax.swing.JScrollPane();
    jTextArea1 = new javax.swing.JTextArea();
    jLabel7 = new javax.swing.JLabel();
    jLabel8 = new javax.swing.JLabel();
    jButton1 = new javax.swing.JButton();
    jButton2 = new javax.swing.JButton();
    jLabel1 = new javax.swing.JLabel();
    jLabel9 = new javax.swing.JLabel();
    jLabel10 = new javax.swing.JLabel();
    jLabel11 = new javax.swing.JLabel();
    jLabel12 = new javax.swing.JLabel();
    jLabel6 = new javax.swing.JLabel();
    jLabel3 = new javax.swing.JLabel();

    jLabel11.setIcon(noptilusLogo);/*from  ww w . j av a  2  s.  co m*/

    jLabel12.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
    jLabel12.setText("<html>www.convcao.com<br>version 0.01</html>");
    jLabel12.setToolTipText("");
    jLabel12.setHorizontalTextPosition(javax.swing.SwingConstants.RIGHT);

    javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
    jPanel1.setLayout(jPanel1Layout);
    jPanel1Layout.setHorizontalGroup(jPanel1Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jLabel11, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                    Short.MAX_VALUE)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                    jPanel1Layout.createSequentialGroup().addGap(0, 19, Short.MAX_VALUE).addComponent(jLabel12,
                            javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
                            javax.swing.GroupLayout.PREFERRED_SIZE)));
    jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                    .addComponent(jLabel11, javax.swing.GroupLayout.PREFERRED_SIZE, 45,
                            javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                    .addComponent(jLabel12, javax.swing.GroupLayout.PREFERRED_SIZE,
                            javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGap(0, 0, Short.MAX_VALUE)));

    jLabel2.setFont(new java.awt.Font("Tahoma", 0, 10)); // NOI18N
    jLabel2.setText("Unique ID");

    jTextPane1.setEditable(true);
    jScrollPane1.setViewportView(jTextPane1);
    //jTextPane1.getAccessibleContext().setAccessibleName("");

    renewButton.setText("RENEW");
    renewButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            renewButtonActionPerformed(evt);
        }
    });

    jLabel4.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
    jLabel4.setText("Username");

    jTextField1.setText("FTPUser");

    jLabel5.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
    jLabel5.setText("Password");

    jPasswordField1.setText("FTPUser123");

    connectButton.setText("Connect");
    connectButton.setEnabled(false);
    connectButton.setActionCommand("connect");
    connectButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            try {
                connectButtonActionPerformed(evt);
            } catch (FileNotFoundException | UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (SocketException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    });

    jTextArea1.setEditable(false);
    jTextArea1.setColumns(20);
    jTextArea1.setRows(5);
    jScrollPane2.setViewportView(jTextArea1);

    jLabel7.setFont(new java.awt.Font("Tahoma", 0, 12)); // NOI18N
    jLabel7.setText("Command Monitor");

    jButton1.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
    jButton1.setText("START");
    jButton1.setEnabled(false);
    jButton1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            StartButtonActionPerformed(evt);
        }
    });

    jButton2.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N
    jButton2.setText("STOP");
    jButton2.setEnabled(false);
    jButton2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            StopButtonActionPerformed(evt);
        }
    });

    jLabel1.setForeground(new java.awt.Color(255, 0, 0));
    jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel1.setText(
            "<html>Click HERE to activate the web service using your ID<br>When the web application is ready, press Start </html>");
    jLabel1.setCursor(new Cursor(Cursor.HAND_CURSOR));
    jLabel1.addMouseListener(new java.awt.event.MouseAdapter() {
        public void mouseClicked(java.awt.event.MouseEvent evt) {
            try {
                jLabel1MouseClicked(evt);
            } catch (URISyntaxException | IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    });

    //jLabel9.setText("Working...");
    jLabel9.setIcon(runIcon);
    jLabel9.setVisible(false);

    jLabel10.setText("---");

    jLabel6.setForeground(new java.awt.Color(0, 204, 0));
    jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
    jLabel6.setText("---");

    javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
    jPanel2.setLayout(jPanel2Layout);
    jPanel2Layout.setHorizontalGroup(jPanel2Layout
            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
                    .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addGroup(jPanel2Layout.createSequentialGroup().addContainerGap().addComponent(
                                    jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addGroup(javax.swing.GroupLayout.Alignment.LEADING,
                                    jPanel2Layout.createSequentialGroup().addGroup(jPanel2Layout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(jPanel2Layout.createSequentialGroup()
                                                    .addGap(126, 126, 126).addComponent(jLabel7,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE, 110,
                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                            .addGroup(jPanel2Layout.createSequentialGroup().addGap(23, 23, 23)
                                                    .addGroup(jPanel2Layout
                                                            .createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.TRAILING)
                                                            .addGroup(jPanel2Layout.createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    false)
                                                                    .addGroup(
                                                                            javax.swing.GroupLayout.Alignment.TRAILING,
                                                                            jPanel2Layout
                                                                                    .createSequentialGroup()
                                                                                    .addComponent(jLabel9,
                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                            56,
                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                                    .addPreferredGap(
                                                                                            javax.swing.LayoutStyle.ComponentPlacement.RELATED,
                                                                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                                                                            Short.MAX_VALUE)
                                                                                    .addComponent(jButton1,
                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                            80,
                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                                    .addGap(29, 29, 29)
                                                                                    .addComponent(jButton2,
                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                                            77,
                                                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                                                    .addComponent(jScrollPane2,
                                                                            javax.swing.GroupLayout.Alignment.TRAILING,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            308,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                                            .addComponent(jLabel10,
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 103,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                            .addComponent(jLabel1,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 299,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE))))
                                            .addGap(0, 0, Short.MAX_VALUE))
                            .addGroup(jPanel2Layout.createSequentialGroup().addGap(0, 0, Short.MAX_VALUE)
                                    .addGroup(jPanel2Layout
                                            .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                    jPanel2Layout.createSequentialGroup()
                                                            .addComponent(jLabel2,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 80,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                            .addGap(18, 18, 18)
                                                            .addComponent(jScrollPane1,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE, 130,
                                                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                                                            .addGap(18, 18, 18).addComponent(renewButton))
                                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
                                                    jPanel2Layout.createSequentialGroup().addGroup(jPanel2Layout
                                                            .createParallelGroup(
                                                                    javax.swing.GroupLayout.Alignment.LEADING,
                                                                    false)
                                                            .addGroup(jPanel2Layout.createSequentialGroup()
                                                                    .addComponent(jLabel4,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            64,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addGap(18, 18, 18)
                                                                    .addComponent(jTextField1,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            130,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                                                            .addGroup(jPanel2Layout.createSequentialGroup()
                                                                    .addComponent(jLabel5,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE,
                                                                            64,
                                                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                                                    .addGap(18, 18, 18)
                                                                    .addComponent(jPasswordField1)))
                                                            .addGap(14, 14, 14).addComponent(connectButton)))))
                    .addContainerGap()));
    jPanel2Layout
            .setVerticalGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel2Layout.createSequentialGroup()
                            .addGroup(jPanel2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(renewButton, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jScrollPane1).addComponent(jLabel2,
                                            javax.swing.GroupLayout.PREFERRED_SIZE, 25,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGap(18, 18, 18)
                            .addGroup(jPanel2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(jPanel2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jPasswordField1, javax.swing.GroupLayout.PREFERRED_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(connectButton, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 21,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel1)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 20,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 113,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(jPanel2Layout
                                    .createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                    .addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 33,
                                            javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 26,
                                    javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(5, 5, 5)));

    jLabel1.getAccessibleContext().setAccessibleName("jLabel1");

    jLabel3.setFont(new java.awt.Font("Tahoma", 1, 22)); // NOI18N
    jLabel3.setText("Real Time Navigation");

    jLabel8.setIcon(appLogo);

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(jPanelMain);
    jPanelMain.setLayout(layout);
    layout.setHorizontalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup().addContainerGap().addComponent(jLabel3)
                    .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
            .addGroup(layout.createSequentialGroup()
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jLabel8, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED).addComponent(jPanel2,
                            javax.swing.GroupLayout.PREFERRED_SIZE, 331, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addContainerGap()));
    layout.setVerticalGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup().addComponent(jLabel3)
                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                    .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 110,
                                            javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
                                            javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                            .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE,
                                    javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addContainerGap()));

    addMenuItem("Settings>Noptilus>Coordinate Settings",
            ImageUtils.getIcon(PluginUtils.getPluginIcon(getClass())), new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    PluginUtils.editPluginProperties(coords, true);
                    coords.saveProps();
                }
            });

    addMenuItem("Settings>Noptilus>ConvCAO Settings", ImageUtils.getIcon(PluginUtils.getPluginIcon(getClass())),
            new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    PluginUtils.editPluginProperties(convcaoNeptusInteraction.this, true);
                }
            });

    addMenuItem("Settings>Noptilus>Force vehicle depth",
            ImageUtils.getIcon(PluginUtils.getPluginIcon(getClass())), new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    if (positions.isEmpty()) {
                        GuiUtils.errorMessage(getConsole(), "Force vehicle depth",
                                "ConvCAO control is not active");
                        return;
                    }
                    String[] choices = nameTable.values().toArray(new String[0]);

                    String vehicle = (String) JOptionPane.showInputDialog(getConsole(), "Force vehicle depth",
                            "Choose vehicle", JOptionPane.QUESTION_MESSAGE, null, choices, choices[0]);

                    if (vehicle != null) {
                        double depth = depths.get(vehicle);
                        String newDepth = JOptionPane.showInputDialog(getConsole(), "New depth", "" + depth);
                        try {
                            double dd = Double.parseDouble(newDepth);
                            depths.put(vehicle, dd);
                        } catch (Exception ex) {
                            GuiUtils.errorMessage(getConsole(), ex);
                        }
                    }
                }
            });

    add(jPanelMain);

    renewButtonActionPerformed(null);

}

From source file:com.archivas.clienttools.arcmover.gui.panels.ProfilePanel.java

public final void renameSelectedRow() {
    try {/*from  w  ww. ja  va 2s.c  o  m*/
        if (getSelectedRowCount() != 1) {
            JOptionPane.showMessageDialog(this, "You may only rename one object at a time", "",
                    JOptionPane.INFORMATION_MESSAGE);
            return;
        }

        // show rename dialog
        String newFileName;
        String oldFileName = selectedFile.getFileName();

        // The slugs are stand-ins for file type in messages
        final String lSlug = (selectedFile.isDirectory() ? "directory" : "file");
        final String uSlug = (selectedFile.isDirectory() ? "Directory" : "File");

        do {
            final String message = String.format("New %s name", lSlug);
            final String title = String.format("Rename %s", uSlug);

            // get new file name from user
            newFileName = (String) JOptionPane.showInputDialog(this.getParent(), message, title,
                    JOptionPane.QUESTION_MESSAGE, null, null, selectedFile.getFileName());

            // check if user pressed 'cancel' button
            if (newFileName == null) {
                LOG.info("Rename operation canceled");

                return;
            }

            // validate the new file name
            // TODO: Complete validation based on target OS is not performed at this time. If
            // needed, that should be added here.
            if (newFileName.contains("/") || newFileName.contains("\\")) {
                final String errorMessage = String.format("Invalid %s name", lSlug);
                JOptionPane.showMessageDialog(this.getParent(), errorMessage, "Rename",
                        JOptionPane.WARNING_MESSAGE);
                newFileName = null;
            }

        } while ((newFileName == null) || (newFileName.length() <= 0));

        try {
            boolean success;
            success = arcMoverEngine.renameTo(profileModel.getSelectedProfile(),
                    selectedFile.getParent().getPath(), oldFileName, newFileName);
            if (!success) {
                throw new IOException(String.format("Could not rename %s.", lSlug));
            }
            LOG.info("Renamed " + oldFileName + " to " + newFileName);

            HCPDataMigrator.getInstance().refreshMatchingPanels(profileModel.getSelectedProfile(), currentDir);

        } catch (Exception e1) {
            String uiErrorMsg;
            String logErrorMsg;

            logErrorMsg = "Could not rename " + selectedFile.getPath() + " to " + newFileName;
            uiErrorMsg = DBUtils.getErrorMessage("Error renaming " + selectedFile.getPath(), e1);
            LOG.log(Level.WARNING, logErrorMsg, e1);
            GUIHelper.showMessageDialog(this.getParent(), uiErrorMsg, "Rename", JOptionPane.ERROR_MESSAGE);
        }
    } catch (RuntimeException e1) {
        // TODO: Implement Proper Error Handling
        LOG.log(Level.WARNING, "Unexpected Exception", e1);
        throw e1;
    }
}

From source file:com.freedomotic.jfrontend.MainWindow.java

private void mnuSelectEnvironmentActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_mnuSelectEnvironmentActionPerformed
    if (auth.isPermitted("environments:read")) {

        if (api.environments().findAll().size() == 1) {
            drawer.setCurrEnv(api.environments().findAll().get(0));
            setMapTitle(api.environments().findAll().get(0).getPojo().getName());
        } else {//  w w  w  . j a  v a  2s  .c  o  m
            Object[] possibilities = api.environments().findAll().toArray();
            EnvironmentLogic input = (EnvironmentLogic) JOptionPane.showInputDialog(this,
                    i18n.msg("select_env"), i18n.msg("select_env_title"), JOptionPane.PLAIN_MESSAGE, null,
                    possibilities, drawer.getCurrEnv());

            //If a string was returned
            if (input != null) {
                setEnvironment(input);
            } else {
                setEnvironment(api.environments().findAll().get(0));
            }
        }
    }
}

From source file:net.sf.jabref.gui.BasePanel.java

private boolean saveDatabase(File file, boolean selectedOnly, Charset enc,
        SavePreferences.DatabaseSaveType saveType) throws SaveException {
    SaveSession session;//from  w  w w  .java  2 s.  co m
    frame.block();
    final String SAVE_DATABASE = Localization.lang("Save database");
    try {
        SavePreferences prefs = SavePreferences.loadForSaveFromPreferences(Globals.prefs).withEncoding(enc)
                .withSaveType(saveType);
        BibtexDatabaseWriter databaseWriter = new BibtexDatabaseWriter(FileSaveSession::new);
        if (selectedOnly) {
            session = databaseWriter.savePartOfDatabase(bibDatabaseContext, mainTable.getSelectedEntries(),
                    prefs);
        } else {
            session = databaseWriter.saveDatabase(bibDatabaseContext, prefs);
        }

        registerUndoableChanges(session);

    } catch (UnsupportedCharsetException ex2) {
        JOptionPane.showMessageDialog(frame,
                Localization.lang("Could not save file.") + ' '
                        + Localization.lang("Character encoding '%0' is not supported.", enc.displayName()),
                SAVE_DATABASE, JOptionPane.ERROR_MESSAGE);
        throw new SaveException("rt");
    } catch (SaveException ex) {
        if (ex.specificEntry()) {
            // Error occurred during processing of
            // be. Highlight it:
            final int row = mainTable.findEntry(ex.getEntry());
            final int topShow = Math.max(0, row - 3);
            mainTable.setRowSelectionInterval(row, row);
            mainTable.scrollTo(topShow);
            showEntry(ex.getEntry());
        } else {
            LOGGER.warn("Could not save", ex);
        }

        JOptionPane.showMessageDialog(frame, Localization.lang("Could not save file.") + "\n" + ex.getMessage(),
                SAVE_DATABASE, JOptionPane.ERROR_MESSAGE);
        throw new SaveException("rt");

    } finally {
        frame.unblock();
    }

    boolean commit = true;
    if (!session.getWriter().couldEncodeAll()) {
        FormBuilder builder = FormBuilder.create()
                .layout(new FormLayout("left:pref, 4dlu, fill:pref", "pref, 4dlu, pref"));
        JTextArea ta = new JTextArea(session.getWriter().getProblemCharacters());
        ta.setEditable(false);
        builder.add(Localization.lang("The chosen encoding '%0' could not encode the following characters:",
                session.getEncoding().displayName())).xy(1, 1);
        builder.add(ta).xy(3, 1);
        builder.add(Localization.lang("What do you want to do?")).xy(1, 3);
        String tryDiff = Localization.lang("Try different encoding");
        int answer = JOptionPane.showOptionDialog(frame, builder.getPanel(), SAVE_DATABASE,
                JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE, null,
                new String[] { Localization.lang("Save"), tryDiff, Localization.lang("Cancel") }, tryDiff);

        if (answer == JOptionPane.NO_OPTION) {
            // The user wants to use another encoding.
            Object choice = JOptionPane.showInputDialog(frame, Localization.lang("Select encoding"),
                    SAVE_DATABASE, JOptionPane.QUESTION_MESSAGE, null, Encodings.ENCODINGS_DISPLAYNAMES, enc);
            if (choice == null) {
                commit = false;
            } else {
                Charset newEncoding = Charset.forName((String) choice);
                return saveDatabase(file, selectedOnly, newEncoding, saveType);

            }
        } else if (answer == JOptionPane.CANCEL_OPTION) {
            commit = false;
        }

    }

    if (commit) {
        session.commit(file.toPath());
        this.bibDatabaseContext.getMetaData().setEncoding(enc); // Make sure to remember which encoding we used.
    } else {
        session.cancel();
    }

    return commit;
}

From source file:com.diversityarrays.kdxplore.KDXploreFrame.java

private void doBackupDatabase() {

    switch (backupProviders.size()) {
    case 0:/*from  w w w .j a v  a 2 s .c o m*/
        MsgBox.warn(this, Msg.MSG_NO_DB_BACKUP_APPS_AVAILABLE(), getTitle());
        return;

    case 1:
        backupProviders.get(0).doDatabaseBackup(this);
        break;

    default:
        Map<String, BackupProvider> bpByName = backupProviders.stream()
                .collect(Collectors.toMap(BackupProvider::getBackupProviderName, Function.identity()));

        String[] choices = backupProviders.stream().map(BackupProvider::getBackupProviderName)
                .collect(Collectors.toList()).toArray(new String[backupProviders.size()]);

        Object choice = JOptionPane.showInputDialog(this, Msg.MSG_SELECT_APP_FOR_BACKUP(),
                Msg.TITLE_BACKUP_DATABASE(), JOptionPane.QUESTION_MESSAGE, null, choices, choices[0]);

        if (choice != null) {
            BackupProvider bp = bpByName.get(choice);
            bp.doDatabaseBackup(this);
        }
        break;
    }
}

From source file:marytts.tools.redstart.AdminWindow.java

private void jMenuItem_ImportTextActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem_ImportTextActionPerformed
    JFileChooser fc = new JFileChooser(new File(voiceFolderPathString));
    fc.setDialogTitle("Choose text file to import");
    //fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
    int returnVal = fc.showOpenDialog(this);
    if (returnVal != JFileChooser.APPROVE_OPTION)
        return;/*from w  ww. j  av  a2  s .c o m*/
    File file = fc.getSelectedFile();
    if (file == null)
        return;
    String[] lines = null;
    try {
        lines = StringUtils.readTextFile(file.getAbsolutePath(), "UTF-8");
    } catch (IOException ioe) {
        ioe.printStackTrace();
    }
    if (lines == null || lines.length == 0)
        return;
    Object[] options = new Object[] { "Keep first column", "Discard first column" };
    int answer = JOptionPane.showOptionDialog(this,
            "File contains " + lines.length + " sentences.\n" + "Sample line:\n" + lines[0] + "\n"
                    + "Keep or discard first column?",
            "Import details", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, options,
            options[1]);
    boolean discardFirstColumn = (answer == JOptionPane.NO_OPTION);

    String prefix = (String) JOptionPane.showInputDialog(this,
            "Prefix to use for individual sentence filenames:", "Choose filename prefix",
            JOptionPane.PLAIN_MESSAGE, null, null, "s");
    int numDigits = (int) Math.log10(lines.length) + 1;
    String pattern = prefix + "%0" + numDigits + "d.txt";
    File scriptFile = new File(voiceFolderPathString + "/" + file.getName() + ".script.txt");
    PrintWriter scriptWriter = null;
    try {
        scriptWriter = new PrintWriter(new OutputStreamWriter(new FileOutputStream(scriptFile), "UTF-8"));
    } catch (IOException e) {
        JOptionPane.showMessageDialog(this,
                "Cannot write to script file " + scriptFile.getAbsolutePath() + ":\n" + e.getMessage());
        if (scriptWriter != null)
            scriptWriter.close();
        return;
    }
    File textFolder = getPromptFolderPath();

    // if filename ends with ".txt_tr" then it has also transcriptions in it
    String selectedFile_ext = FilenameUtils.getExtension(file.getName());
    Boolean inputHasAlsoTranscription = false;
    File transcriptionFolder = new File("");

    // transcription folder name, and makedir
    if (selectedFile_ext.equals("txt_tr")) {
        System.out.println("txt_tr");
        if (lines.length % 2 == 0) {
            // even
        } else {
            // odd
            System.err.println(".txt_tr file has an odd number of lines, so it's corrupted, exiting.");
            System.exit(0);
        }
        inputHasAlsoTranscription = true;
        String transcriptionFolderName = voiceFolderPathString + AdminWindow.TRANSCRIPTION_FOLDER_NAME;
        transcriptionFolder = new File(transcriptionFolderName);
        if (transcriptionFolder.exists()) {
            System.out.println("transcription folder already exists");
        } else {
            if (transcriptionFolder.mkdirs()) {
                System.out.println("transcription folder created");
            } else {
                System.err.println("Cannot create transcription folder -- exiting.");
                System.exit(0);
            }
        }
    } else {
        System.out.println("input file extension is not txt_tr, but " + selectedFile_ext
                + ", so it contains ortographic sentences without transcriptions.");
    }

    for (int i = 0; i < lines.length; i++) {
        String line = lines[i];
        if (discardFirstColumn)
            line = line.substring(line.indexOf(' ') + 1);
        int sent_index = i + 1;
        if (inputHasAlsoTranscription == true) {
            sent_index = i / 2 + 1;
        }

        String filename = String.format(pattern, sent_index);
        System.out.println(filename + " " + line);
        File textFile = new File(textFolder, filename);
        if (textFile.exists()) {
            JOptionPane.showMessageDialog(this, "Cannot writing file " + filename + ":\n" + "File exists!\n"
                    + "Aborting text file import.");
            return;
        }
        PrintWriter pw = null;
        try {
            pw = new PrintWriter(new OutputStreamWriter(new FileOutputStream(textFile), "UTF-8"));
            pw.println(line);
            scriptWriter.println(filename.substring(0, filename.lastIndexOf('.')) + " " + line);
        } catch (IOException ioe) {
            JOptionPane.showMessageDialog(this, "Error writing file " + filename + ":\n" + ioe.getMessage());
            ioe.printStackTrace();
            return;
        } finally {
            if (pw != null)
                pw.close();
        }

        // transcription case:
        if (inputHasAlsoTranscription == true) {
            // modify pattern: best would be something like sed "s/.txt$/.tr$/"
            // easy but dirty:
            String transc_pattern = pattern.replace(".txt", ".tr");
            filename = String.format(transc_pattern, sent_index);
            i++;
            line = lines[i];
            if (discardFirstColumn)
                line = line.substring(line.indexOf(' ') + 1);
            File transcriptionTextFile = new File(transcriptionFolder, filename);
            if (transcriptionTextFile.exists()) {
                JOptionPane.showMessageDialog(this, "Cannot writing file " + transcriptionTextFile.getName()
                        + ":\n" + "File exists!\n" + "Aborting text file import.");
                return;
            }
            pw = null;
            try {
                pw = new PrintWriter(
                        new OutputStreamWriter(new FileOutputStream(transcriptionTextFile), "UTF-8"));
                pw.println(line);
                scriptWriter.println(filename.substring(0, filename.lastIndexOf('.')) + " " + line);
            } catch (IOException ioe) {
                JOptionPane.showMessageDialog(this,
                        "Error writing file " + filename + ":\n" + ioe.getMessage());
                ioe.printStackTrace();
                return;
            } finally {
                if (pw != null)
                    pw.close();
            }
        }

    }
    scriptWriter.close();
    setupVoice();
}

From source file:com.archivas.clienttools.arcmover.gui.panels.ProfilePanel.java

public void mkdirActionAux() {
    try {//from  w w w  .  j a  v a  2s.c  o  m
        String newDirName;
        String newDirPath = null;

        do {
            // get new directory name from user
            newDirName = (String) JOptionPane.showInputDialog(this.getParent(), "Name of new directory",
                    "New Directory", JOptionPane.QUESTION_MESSAGE, null, null, "directory name");

            // check if user pressed 'cancel' button
            if (newDirName == null) {
                LOG.info("Mkdir cancelled\n");
                return;
            }

            /**
             * Validate the new directory name TODO: Complete validation based to target OS The
             * forward slash is never valid. On a local file system the file separator is
             * invalid.
             */
            ProfileType type = getSelectedProfile().getType();
            if (newDirName.contains("/")
                    || (type == ProfileType.FILESYSTEM && newDirName.contains(File.separator))
                    || (type == ProfileType.HCAP2 && newDirName.contains("&"))) {
                JOptionPane.showMessageDialog(this.getParent(), "Invalid directory name", "Error",
                        JOptionPane.WARNING_MESSAGE);
                newDirName = null;
                continue;
            }

            // build new directory path from current directory and user supplied name. We must
            // encode the part just entered by the user
            String encodedDirName = newDirName;
            try {
                encodedDirName = profileModel.getSelectedProfile().encode(newDirName);
            } catch (Exception e) {
                JOptionPane.showMessageDialog(this.getParent(), "An error occurred encoding the directory name",
                        "Error", JOptionPane.WARNING_MESSAGE);
                LOG.log(Level.WARNING, String.format("An error occurred encoding directory <%s>", newDirName));
                newDirName = null;
                continue;
            }

            newDirPath = FileUtil.resolvePath(currentDir.getPath(), encodedDirName,
                    profileModel.getSelectedProfile().getPathSeparator());
        } while (newDirName == null || newDirName.length() <= 0 || newDirPath == null);

        LOG.info("Creating new directory " + newDirPath);
        try {
            if (!arcMoverEngine.mkdir(profileModel.getSelectedProfile(), newDirPath)) {
                String msg = "Could not create directory: Permission Denied";
                throw new IOException(msg);
            }
            final ArcMoverDirectory dir = profileModel.getProfileAdapter().getDirectory(newDirPath);
            GUIHelper.invokeAndWait(new Runnable() {
                public void run() {
                    refreshPathAndFileList();
                    // refresh the other panel if necessary, but it won't do this panel because
                    // we are currently locked
                    HCPDataMigrator.getInstance().refreshMatchingPanels(profileModel.getSelectedProfile(),
                            currentDir);
                }
            }, "refresh after creating new directory");
        } catch (Exception e) {
            String uiErrorMsg;
            String logErrorMsg;

            if (e instanceof StorageAdapterException) {
                logErrorMsg = e.getMessage();
                uiErrorMsg = e.getMessage();
            } else {
                logErrorMsg = "Could not create directory: " + newDirPath;
                uiErrorMsg = DBUtils.getErrorMessage(
                        "Error creating directory " + profileModel.getSelectedProfile().decode(newDirPath), e);
            }
            LOG.log(Level.WARNING, logErrorMsg, e);
            GUIHelper.showMessageDialog(this.getParent(), uiErrorMsg, "Create Directory Error",
                    JOptionPane.ERROR_MESSAGE);
        }
    } catch (RuntimeException e1) {
        // TODO: Implement Proper Error Handling
        LOG.log(Level.WARNING, "Unexpected Exception", e1);
        throw e1;
    }
}

From source file:eu.apenet.dpt.standalone.gui.DataPreparationToolGUI.java

private void createOptionPaneForCountryCode() {
    String currentResult = retrieveFromDb.retrieveCountryCode();
    String explanation = labels.getString("enterCountryCode") + ((currentResult != null)
            ? "\n" + labels.getString("currentCountryCode") + ": '" + currentResult + "'"
            : "");
    int i = 0;/*  w w  w. j a va 2 s .c om*/
    String result;
    do {
        if (i == 1) {
            explanation += "\n" + labels.getString("options.pleaseFollowRules");
        }
        result = (String) JOptionPane.showInputDialog(getContentPane(), explanation,
                labels.getString("chooseCountryCode"), JOptionPane.QUESTION_MESSAGE, Utilities.icon, null,
                null);
        if (result == null) {
            if (currentResult == null)
                System.exit(0);
            break;
        }
        i++;
    } while (dateNormalization.checkForCountrycode(result) == null);
    if (result != null) {
        retrieveFromDb.saveCountryCode(result);
    }
}

From source file:eu.apenet.dpt.standalone.gui.DataPreparationToolGUI.java

private void createOptionPaneForRepositoryCode() {
    String currentResult = retrieveFromDb.retrieveRepositoryCode();
    String explanation = labels.getString("enterIdentifier") + ((currentResult != null)
            ? "\n" + labels.getString("currentRepositoryCode") + ": '" + currentResult + "'"
            : "");
    int i = 0;/*from  www  . ja  v a 2  s .  c o  m*/
    String result;
    do {
        if (i == 1) {
            explanation += "\n" + labels.getString("options.pleaseFollowRules");
        }
        result = (String) JOptionPane.showInputDialog(getContentPane(), explanation,
                labels.getString("chooseRepositoryCode"), JOptionPane.QUESTION_MESSAGE, Utilities.icon, null,
                null);
        if (result == null) {
            if (currentResult == null)
                System.exit(0);
            break;
        }
        i++;
    } while (dateNormalization.checkForMainagencycode(result) == null);
    if (result != null) {
        retrieveFromDb.saveRepositoryCode(result);
    }
}