This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 127839
Collapse All | Expand All

(-)a/mercurial/src/org/netbeans/modules/mercurial/ui/diff/ImportDiffAction.java (-14 / +29 lines)
Lines 59-65 import org.openide.util.NbBundle; Link Here
59
import org.openide.util.NbBundle;
59
import org.openide.util.NbBundle;
60
import org.openide.util.RequestProcessor;
60
import org.openide.util.RequestProcessor;
61
import org.openide.DialogDisplayer;
61
import org.openide.DialogDisplayer;
62
import org.openide.DialogDescriptor;
62
import org.openide.NotifyDescriptor;
63
import org.openide.NotifyDescriptor;
64
import java.awt.event.ActionListener;
65
import java.awt.Dialog;
63
import javax.swing.JFileChooser;
66
import javax.swing.JFileChooser;
64
import javax.swing.filechooser.FileFilter;
67
import javax.swing.filechooser.FileFilter;
65
import org.netbeans.modules.versioning.util.AccessibleJFileChooser;
68
import org.netbeans.modules.versioning.util.AccessibleJFileChooser;
Lines 89-95 public class ImportDiffAction extends Co Link Here
89
92
90
    private static void importDiff(VCSContext ctx) {
93
    private static void importDiff(VCSContext ctx) {
91
        final File root = HgUtils.getRootFile(ctx);
94
        final File root = HgUtils.getRootFile(ctx);
92
        JFileChooser fileChooser = new AccessibleJFileChooser(NbBundle.getMessage(ImportDiffAction.class, "ACSD_ImportBrowseFolder"), null);   // NO I18N
95
        final JFileChooser fileChooser = new AccessibleJFileChooser(NbBundle.getMessage(ImportDiffAction.class, "ACSD_ImportBrowseFolder"), null);   // NO I18N
93
        fileChooser.setDialogTitle(NbBundle.getMessage(ImportDiffAction.class, "ImportBrowse_title"));                                            // NO I18N
96
        fileChooser.setDialogTitle(NbBundle.getMessage(ImportDiffAction.class, "ImportBrowse_title"));                                            // NO I18N
94
        fileChooser.setMultiSelectionEnabled(false);
97
        fileChooser.setMultiSelectionEnabled(false);
95
        FileFilter[] old = fileChooser.getChoosableFileFilters();
98
        FileFilter[] old = fileChooser.getChoosableFileFilters();
Lines 98-120 public class ImportDiffAction extends Co Link Here
98
            fileChooser.removeChoosableFileFilter(fileFilter);
101
            fileChooser.removeChoosableFileFilter(fileFilter);
99
102
100
        }
103
        }
101
       fileChooser.setCurrentDirectory(new File(HgModuleConfig.getDefault().getImportFolder()));
104
        fileChooser.setApproveButtonMnemonic(NbBundle.getMessage(ImportDiffAction.class, "OK_Button").charAt(0));                      // NO I18N
105
        fileChooser.setApproveButtonText(NbBundle.getMessage(ImportDiffAction.class, "OK_Button"));                                        // NO I18N
106
        fileChooser.setCurrentDirectory(new File(HgModuleConfig.getDefault().getImportFolder()));
102
107
103
        if (fileChooser.showDialog(null, NbBundle.getMessage(ImportDiffAction.class, "OK_Button")) == JFileChooser.APPROVE_OPTION) { // NO I18N
108
        DialogDescriptor dd = new DialogDescriptor(fileChooser, NbBundle.getMessage(ImportDiffAction.class, "Browse_title"));              // NO I18N
104
            final File patchFile = fileChooser.getSelectedFile();
109
        dd.setOptions(new Object[0]);
110
        final Dialog dialog = DialogDisplayer.getDefault().createDialog(dd);
111
        fileChooser.addActionListener(new ActionListener() {
112
            public void actionPerformed(ActionEvent e) {
113
                String state = e.getActionCommand();
114
                if (state.equals(JFileChooser.APPROVE_SELECTION)) {
115
                    final File patchFile = fileChooser.getSelectedFile();
105
116
106
            HgModuleConfig.getDefault().setImportFolder(patchFile.getParent());
117
                    HgModuleConfig.getDefault().setImportFolder(patchFile.getParent());
107
            if (patchFile != null) {
118
                    if (patchFile != null) {
108
                RequestProcessor rp = Mercurial.getInstance().getRequestProcessor(root.getAbsolutePath());
119
                        RequestProcessor rp = Mercurial.getInstance().getRequestProcessor(root.getAbsolutePath());
109
                HgProgressSupport support = new HgProgressSupport() {
120
                        HgProgressSupport support = new HgProgressSupport() {
110
                    public void perform() {
121
                            public void perform() {
111
                        OutputLogger logger = getLogger();
122
                                OutputLogger logger = getLogger();
112
                        performImport(root, patchFile, logger);
123
                                performImport(root, patchFile, logger);
124
                            }
125
                        };
126
                        support.start(rp, root.getAbsolutePath(), org.openide.util.NbBundle.getMessage(ImportDiffAction.class, "LBL_ImportDiff_Progress")); // NOI18N
113
                    }
127
                    }
114
                };
128
                }
115
                support.start(rp, root.getAbsolutePath(), org.openide.util.NbBundle.getMessage(ImportDiffAction.class, "LBL_ImportDiff_Progress")); // NOI18N
129
                dialog.dispose();
116
            }
130
            }
117
        }
131
        });
132
        dialog.setVisible(true);
118
    }
133
    }
119
134
120
    private static void performImport(File repository, File patchFile, OutputLogger logger) {
135
    private static void performImport(File repository, File patchFile, OutputLogger logger) {

Return to bug 127839