Example usage for com.intellij.openapi.ui DialogWrapper close

List of usage examples for com.intellij.openapi.ui DialogWrapper close

Introduction

In this page you can find the example usage for com.intellij.openapi.ui DialogWrapper close.

Prototype

public final void close(int exitCode) 

Source Link

Usage

From source file:com.intellij.debugger.actions.ForceEarlyReturnAction.java

License:Apache License

private static void forceEarlyReturn(final Value value, final ThreadReferenceProxyImpl thread,
        final DebugProcessImpl debugProcess, @Nullable final DialogWrapper dialog) {
    debugProcess.getManagerThread().schedule(new DebuggerCommandImpl() {
        @Override//from  w w  w .  j a  v a 2s  .co m
        protected void action() throws Exception {
            try {
                thread.forceEarlyReturn(value);
            } catch (Exception e) {
                showError(debugProcess.getProject(),
                        DebuggerBundle.message("error.early.return", e.getLocalizedMessage()));
                return;
            }
            //noinspection SSBasedInspection
            SwingUtilities.invokeLater(() -> {
                if (dialog != null) {
                    dialog.close(DialogWrapper.OK_EXIT_CODE);
                }
                debugProcess.getSession().stepInto(true, null);
            });
        }
    });
}

From source file:com.intellij.plugins.haxe.ide.refactoring.extractSuperclass.ExtractSuperClassUtil.java

License:Apache License

public static boolean showConflicts(DialogWrapper dialog, MultiMap<PsiElement, String> conflicts,
        final Project project) {
    if (!conflicts.isEmpty()) {
        fireConflictsEvent(conflicts, project);
        ConflictsDialog conflictsDialog = new ConflictsDialog(project, conflicts);
        conflictsDialog.show();//from www.j  av  a2  s .c o m
        final boolean ok = conflictsDialog.isOK();
        if (!ok && conflictsDialog.isShowConflicts())
            dialog.close(DialogWrapper.CANCEL_EXIT_CODE);
        return ok;
    }
    return true;
}

From source file:com.intellij.refactoring.extractSuperclass.ExtractSuperClassMultiUtil.java

License:Apache License

public static boolean showConflicts(DialogWrapper dialog, MultiMap<PsiElement, String> conflicts,
        final Project project) {
    if (!conflicts.isEmpty()) {
        ConflictsDialog conflictsDialog = new ConflictsDialog(project, conflicts);
        conflictsDialog.show();/*  w w  w.  j  a v  a 2 s.  c om*/
        final boolean ok = conflictsDialog.isOK();
        if (!ok && conflictsDialog.isShowConflicts())
            dialog.close(DialogWrapper.CANCEL_EXIT_CODE);
        return ok;
    }
    return true;
}

From source file:com.mbeddr.pluginmanager.com.intellij.ide.plugins.PluginHeaderPanel.java

License:Apache License

private void createUIComponents() {
    myInstallButton = new JButton() {
        {/*from  ww  w .  ja v  a2  s  . com*/
            setOpaque(false);
            setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
        }

        @Override
        public Dimension getPreferredSize() {
            final FontMetrics metrics = getFontMetrics(getFont());
            final int textWidth = metrics.stringWidth(getText());
            final int width = 8 + 16 + 4 + textWidth + 8;
            final int height = 2 + Math.max(16, metrics.getHeight()) + 2;
            return new Dimension(width, height);
        }

        @Override
        public void paint(Graphics g2) {
            final Graphics2D g = (Graphics2D) g2;
            final GraphicsConfig config = GraphicsUtil.setupAAPainting(g);
            final int w = g.getClipBounds().width;
            final int h = g.getClipBounds().height;

            g.setPaint(getBackgroundBorderPaint());
            g.fillRoundRect(0, 0, w, h, 7, 7);

            g.setPaint(getBackgroundPaint());
            g.fillRoundRect(1, 1, w - 2, h - 2, 6, 6);
            g.setColor(getButtonForeground());
            int offset = 8;
            g.drawString(getText(), offset + 16 + 4, getBaseline(w, h));
            getIcon().paintIcon(this, g, offset, (getHeight() - getIcon().getIconHeight()) / 2);
            config.restore();
        }

        private Color getButtonForeground() {
            switch (myActionId) {
            case UPDATE:
                return new JBColor(Gray._240, Gray._210);
            case INSTALL:
                return new JBColor(Gray._240, Gray._210);
            case RESTART:
            case UNINSTALL:
                return new JBColor(Gray._0, Gray._210);
            }

            return new JBColor(Gray._80, Gray._60);
        }

        private Paint getBackgroundPaint() {
            switch (myActionId) {
            case UPDATE:
                return new JBGradientPaint(this, new JBColor(new Color(98, 158, 225), new Color(98, 158, 225)),
                        new JBColor(new Color(58, 91, 181), new Color(58, 91, 181)));
            case INSTALL:
                return new JBGradientPaint(this, new JBColor(new Color(96, 204, 105), new Color(81, 149, 87)),
                        new JBColor(new Color(50, 101, 41), new Color(40, 70, 47)));
            case RESTART:
            case UNINSTALL:
                return UIUtil.isUnderDarcula()
                        ? new JBGradientPaint(this, UIManager.getColor("Button.darcula.color1"),
                                UIManager.getColor("Button.darcula.color2"))
                        : Gray._240;
            }
            return Gray._238;
        }

        private Paint getBackgroundBorderPaint() {
            switch (myActionId) {
            case UPDATE:
                return new JBColor(new Color(166, 180, 205), Gray._85);
            case INSTALL:
                return new JBColor(new Color(201, 223, 201), Gray._70);
            case RESTART:
            case UNINSTALL:
                return new JBColor(Gray._220, Gray._100.withAlpha(180));
            }
            return Gray._208;
        }

        @Override
        public String getText() {
            switch (myActionId) {
            case UPDATE:
                return "Update";
            case INSTALL:
                return "Install";
            case UNINSTALL:
                return "Uninstall";
            case RESTART:
                return "Restart " + ApplicationNamesInfo.getInstance().getFullProductName();
            }
            return super.getText();
        }

        @Override
        public Icon getIcon() {
            switch (myActionId) {
            case UPDATE:
                return AllIcons.General.DownloadPlugin;
            case INSTALL:
                return AllIcons.General.DownloadPlugin;
            case UNINSTALL:
                return AllIcons.Actions.Delete;
            case RESTART:
                return AllIcons.Actions.Restart;
            }
            return super.getIcon();

        }
    };
    myInstallButton.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            switch (myActionId) {
            case UPDATE:
            case INSTALL:
                new InstallPluginAction(myManager.getAvailable(), myManager.getInstalled())
                        .install(new Runnable() {
                            @Override
                            public void run() {
                                setPlugin(myPlugin);
                            }
                        }, true);
                break;
            case UNINSTALL:
                UninstallPluginAction.uninstall(myManager.getInstalled(), true, myPlugin);
                break;
            case RESTART:
                if (myManager != null) {
                    myManager.apply();
                }
                final DialogWrapper dialog = DialogWrapper
                        .findInstance(KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner());
                if (dialog != null && dialog.isModal()) {
                    dialog.close(DialogWrapper.OK_EXIT_CODE);
                }
                //noinspection SSBasedInspection
                SwingUtilities.invokeLater(new Runnable() {
                    @Override
                    public void run() {
                        final DialogWrapper settings = DialogWrapper
                                .findInstance(IdeFocusManager.findInstance().getFocusOwner());
                        if (settings instanceof SettingsDialog) {
                            ((SettingsDialog) settings).doOKAction();
                            ApplicationManager.getApplication().restart();
                        } else {
                            ApplicationManager.getApplication().restart();
                        }
                    }
                });
                break;
            }
            setPlugin(myPlugin);
        }
    });
}

From source file:org.cordovastudio.editors.designer.propertyTable.properties.IdProperty.java

License:Apache License

@Override
public void setValue(@NotNull final RadViewComponent component, final Object value) throws Exception {
    final String newId = value != null ? value.toString() : "";

    IdManager idManager = IdManager.get(component);
    final String oldId = component.getId();

    if (ourRefactoringChoice != REFACTOR_NO && oldId != null && !oldId.isEmpty() && !newId.isEmpty()
            && !oldId.equals(newId) && component.getTag().isValid()) {
        // Offer rename refactoring?
        XmlTag tag = component.getTag();
        XmlAttribute attribute = tag.getAttribute(ATTR_ID, CORDOVASTUDIO_URI);
        if (attribute != null) {
            Module module = RadModelBuilder.getModule(component);
            if (module != null) {
                XmlAttributeValue valueElement = attribute.getValueElement();
                if (valueElement != null && valueElement.isValid()) {
                    final Project project = module.getProject();
                    // Exact replace only, no comment/text occurrence changes since it is non-interactive
                    RenameProcessor processor = new RenameProcessor(project, valueElement, newId,
                            false /*comments*/, false /*text*/);
                    processor.setPreviewUsages(false);
                    // Do a quick usage search to see if we need to ask about renaming
                    UsageInfo[] usages = processor.findUsages();
                    if (usages.length > 0) {
                        int choice = ourRefactoringChoice;
                        if (choice == REFACTOR_ASK) {
                            DialogBuilder builder = new DialogBuilder(project);
                            builder.setTitle("Update Usages?");
                            JPanel panel = new JPanel(new BorderLayout()); // UGH!
                            JLabel label = new JLabel("<html>" + "Update usages as well?<br>"
                                    + "This will update all XML references and Java R field references.<br>"
                                    + "<br>" + "</html>");
                            panel.add(label, BorderLayout.CENTER);
                            JBCheckBox checkBox = new JBCheckBox("Don't ask again during this session");
                            panel.add(checkBox, BorderLayout.SOUTH);
                            builder.setCenterPanel(panel);
                            builder.setDimensionServiceKey("idPropertyDimension");
                            builder.removeAllActions();

                            DialogBuilder.CustomizableAction yesAction = builder.addOkAction();
                            yesAction.setText(Messages.YES_BUTTON);

                            builder.addActionDescriptor(new DialogBuilder.ActionDescriptor() {
                                @Override
                                public Action getAction(final DialogWrapper dialogWrapper) {
                                    return new AbstractAction(Messages.NO_BUTTON) {
                                        @Override
                                        public void actionPerformed(ActionEvent actionEvent) {
                                            dialogWrapper.close(DialogWrapper.NEXT_USER_EXIT_CODE);
                                        }
                                    };/*  w w  w  .  j  a va  2 s  .  c om*/
                                }
                            });
                            builder.addCancelAction();
                            int exitCode = builder.show();

                            choice = exitCode == DialogWrapper.OK_EXIT_CODE ? REFACTOR_YES
                                    : exitCode == DialogWrapper.NEXT_USER_EXIT_CODE ? REFACTOR_NO
                                            : ourRefactoringChoice;

                            if (!checkBox.isSelected()) {
                                ourRefactoringChoice = REFACTOR_ASK;
                            } else {
                                ourRefactoringChoice = choice;
                            }

                            if (exitCode == DialogWrapper.CANCEL_EXIT_CODE) {
                                return;
                            }
                        }

                        if (choice == REFACTOR_YES) {
                            processor.run();
                            // Fall through to also set the value in the layout editor property; otherwise we'll be out of sync
                        }
                    }
                }
            }
        }
    }

    if (idManager != null) {
        idManager.removeComponent(component, false);
    }

    //noinspection ConstantConditions
    super.setValue(component, value);

    if (idManager != null) {
        idManager.addComponent(component);
    }
}

From source file:org.exbin.deltahex.intellij.DeltaHexFileEditor.java

License:Apache License

private JPopupMenu createContextMenu() {
    final JPopupMenu result = new JPopupMenu();

    final JMenuItem cutMenuItem = new JMenuItem("Cut");
    cutMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, metaMask));
    cutMenuItem.setEnabled(codeArea.hasSelection() && codeArea.isEditable());
    cutMenuItem.addActionListener(new ActionListener() {
        @Override/*from  w ww. java2 s . co m*/
        public void actionPerformed(ActionEvent e) {
            codeArea.cut();
            result.setVisible(false);
        }
    });
    result.add(cutMenuItem);

    final JMenuItem copyMenuItem = new JMenuItem("Copy");
    copyMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C, metaMask));
    copyMenuItem.setEnabled(codeArea.hasSelection());
    copyMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            codeArea.copy();
            result.setVisible(false);
        }
    });
    result.add(copyMenuItem);

    final JMenuItem copyAsCodeMenuItem = new JMenuItem("Copy as Code");
    copyAsCodeMenuItem.setEnabled(codeArea.hasSelection());
    copyAsCodeMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            codeArea.copyAsCode();
            result.setVisible(false);
        }
    });
    result.add(copyAsCodeMenuItem);

    final JMenuItem pasteMenuItem = new JMenuItem("Paste");
    pasteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_V, metaMask));
    pasteMenuItem.setEnabled(codeArea.canPaste() && codeArea.isEditable());
    pasteMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            codeArea.paste();
            result.setVisible(false);
        }
    });
    result.add(pasteMenuItem);

    final JMenuItem pasteFromCodeMenuItem = new JMenuItem("Paste from Code");
    pasteFromCodeMenuItem.setEnabled(codeArea.canPaste() && codeArea.isEditable());
    pasteFromCodeMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            try {
                codeArea.pasteFromCode();
            } catch (IllegalArgumentException ex) {
                JOptionPane.showMessageDialog(editorPanel, ex.getMessage(), "Unable to Paste Code",
                        JOptionPane.ERROR_MESSAGE);
            }
            result.setVisible(false);
        }
    });
    result.add(pasteFromCodeMenuItem);

    final JMenuItem deleteMenuItem = new JMenuItem("Delete");
    deleteMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_DELETE, 0));
    deleteMenuItem.setEnabled(codeArea.hasSelection() && codeArea.isEditable());
    deleteMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            codeArea.delete();
            result.setVisible(false);
        }
    });
    result.add(deleteMenuItem);
    result.addSeparator();

    final JMenuItem selectAllMenuItem = new JMenuItem("Select All");
    selectAllMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_A, metaMask));
    selectAllMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            codeArea.selectAll();
            result.setVisible(false);
        }
    });
    result.add(selectAllMenuItem);
    result.addSeparator();

    final JMenuItem goToMenuItem = new JMenuItem("Go To...");
    goToMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_G, metaMask));
    goToMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            goToHandler.getGoToLineAction().actionPerformed(null);
        }
    });
    result.add(goToMenuItem);

    final JMenuItem findMenuItem = new JMenuItem("Find...");
    findMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F, metaMask));
    findMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            showSearchPanel(false);
        }
    });
    result.add(findMenuItem);

    final JMenuItem replaceMenuItem = new JMenuItem("Replace...");
    replaceMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_H, metaMask));
    replaceMenuItem.setEnabled(codeArea.isEditable());
    replaceMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            showSearchPanel(true);
        }
    });
    result.add(replaceMenuItem);
    result.addSeparator();
    final JMenuItem optionsMenuItem = new JMenuItem("Options...");
    optionsMenuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            final DeltaHexOptionsPanelBorder optionsPanel = new DeltaHexOptionsPanelBorder();
            optionsPanel.setFromCodeArea(codeArea);
            optionsPanel.setShowValuesPanel(valuesPanelVisible);
            optionsPanel.setPreferredSize(new Dimension(640, 480));
            OptionsControlPanel optionsControlPanel = new OptionsControlPanel();
            JPanel dialogPanel = WindowUtils.createDialogPanel(optionsPanel, optionsControlPanel);
            final DialogWrapper dialog = DialogUtils.createDialog(dialogPanel, "Options");
            WindowUtils.assignGlobalKeyListener(dialogPanel, optionsControlPanel.createOkCancelListener());
            optionsControlPanel.setHandler(new OptionsControlHandler() {
                @Override
                public void controlActionPerformed(OptionsControlHandler.ControlActionType actionType) {
                    if (actionType == OptionsControlHandler.ControlActionType.SAVE) {
                        optionsPanel.store();
                    }
                    if (actionType != OptionsControlHandler.ControlActionType.CANCEL) {
                        optionsPanel.applyToCodeArea(codeArea);
                        boolean applyShowValuesPanel = optionsPanel.isShowValuesPanel();
                        if (applyShowValuesPanel) {
                            showValuesPanel();
                        } else {
                            hideValuesPanel();
                        }
                        applyFromCodeArea();
                        switchDeltaMemoryMode(optionsPanel.isDeltaMemoryMode());
                        codeArea.repaint();
                    }

                    dialog.close(0);
                }
            });
            dialog.setSize(650, 460);
            dialog.showAndGet();
        }
    });
    result.add(optionsMenuItem);

    return result;
}

From source file:org.exbin.deltahex.intellij.EncodingsHandler.java

License:Apache License

private void init() {
    encodings = new ArrayList<>();
    encodingButtonGroup = new ButtonGroup();

    encodingActionListener = new ActionListener() {
        @Override/*  w  w w . j  av  a2 s.  c  o m*/
        public void actionPerformed(ActionEvent e) {
            setSelectedEncoding(((JRadioButtonMenuItem) e.getSource()).getText());
        }
    };

    utfEncodingRadioButtonMenuItem = new JRadioButtonMenuItem();
    utfEncodingRadioButtonMenuItem.setSelected(true);
    utfEncodingRadioButtonMenuItem.setText(UTF_ENCODING_TEXT);
    utfEncodingRadioButtonMenuItem.setToolTipText(UTF_ENCODING_TOOLTIP);
    utfEncodingActionListener = new java.awt.event.ActionListener() {
        @Override
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            setSelectedEncoding(ENCODING_UTF8);
        }
    };
    utfEncodingRadioButtonMenuItem.addActionListener(utfEncodingActionListener);

    encodingButtonGroup.add(utfEncodingRadioButtonMenuItem);
    manageEncodingsAction = new AbstractAction() {
        @Override
        public void actionPerformed(ActionEvent e) {
            final TextEncodingPanel textEncodingPanel = new TextEncodingPanel();
            textEncodingPanel.setHandler(EncodingsHandler.this);
            textEncodingPanel.setEncodingList(encodings);
            final OptionsControlPanel controlPanel = new OptionsControlPanel();
            JPanel dialogPanel = WindowUtils.createDialogPanel(textEncodingPanel, controlPanel);
            DialogWrapper dialog = DialogUtils.createDialog(dialogPanel, "Manage Encodings");
            controlPanel.setHandler(new OptionsControlHandler() {
                @Override
                public void controlActionPerformed(OptionsControlHandler.ControlActionType actionType) {
                    if (actionType != OptionsControlHandler.ControlActionType.CANCEL) {
                        encodings = textEncodingPanel.getEncodingList();
                        rebuildEncodings();
                        if (actionType == OptionsControlHandler.ControlActionType.SAVE) {
                            // Save encodings
                            for (int i = 0; i < encodings.size(); i++) {
                                preferences.setValue(
                                        DeltaHexFileEditor.PREFERENCES_ENCODING_PREFIX + Integer.toString(i),
                                        encodings.get(i));
                            }
                            preferences.unsetValue(DeltaHexFileEditor.PREFERENCES_ENCODING_PREFIX
                                    + Integer.toString(encodings.size()));
                        }
                    }

                    dialog.close(0);
                }
            });
            textEncodingPanel.setAddEncodingsOperation(new TextEncodingPanel.AddEncodingsOperation() {
                @Override
                public List<String> run(List<String> usedEncodings) {
                    final List<String> result = new ArrayList<>();
                    final AddEncodingPanel addEncodingPanel = new AddEncodingPanel();
                    addEncodingPanel.setUsedEncodings(usedEncodings);
                    DefaultControlPanel controlPanel = new DefaultControlPanel(
                            addEncodingPanel.getResourceBundle());
                    JPanel dialogPanel = WindowUtils.createDialogPanel(addEncodingPanel, controlPanel);
                    final DialogWrapper addEncodingDialog = DialogUtils.createDialog(dialogPanel,
                            "Add Encodings");
                    controlPanel.setHandler(new DefaultControlHandler() {
                        @Override
                        public void controlActionPerformed(DefaultControlHandler.ControlActionType actionType) {
                            if (actionType == DefaultControlHandler.ControlActionType.OK) {
                                result.addAll(addEncodingPanel.getEncodings());
                            }

                            addEncodingDialog.close(0);
                        }
                    });
                    WindowUtils.assignGlobalKeyListener(addEncodingDialog.getWindow(),
                            controlPanel.createOkCancelListener());
                    addEncodingDialog.showAndGet();
                    return result;
                }
            });
            WindowUtils.assignGlobalKeyListener(dialog.getWindow(), controlPanel.createOkCancelListener());
            dialog.showAndGet();
        }
    };
    ActionUtils.setupAction(manageEncodingsAction, resourceBundle, "manageEncodingsAction");
    manageEncodingsAction.putValue(ActionUtils.ACTION_DIALOG_MODE, true);
    manageEncodingsAction.putValue(Action.NAME,
            manageEncodingsAction.getValue(Action.NAME) + ActionUtils.DIALOG_MENUITEM_EXT);

    toolsEncodingMenu = new JMenu();
    toolsEncodingMenu.add(utfEncodingRadioButtonMenuItem);
    toolsEncodingMenu.addSeparator();
    toolsEncodingMenu.add(manageEncodingsAction);
    toolsEncodingMenu.setText(resourceBundle.getString("toolsEncodingMenu.text"));
    toolsEncodingMenu.setToolTipText(resourceBundle.getString("toolsEncodingMenu.shortDescription"));
}

From source file:org.exbin.deltahex.intellij.GoToHandler.java

License:Apache License

public Action getGoToLineAction() {
    if (goToLineAction == null) {
        goToLineAction = new AbstractAction() {
            @Override//from w ww . j av  a2  s.  co  m
            public void actionPerformed(ActionEvent e) {
                final GoToHexPanel goToPanel = new GoToHexPanel();
                DefaultControlPanel goToControlPanel = new DefaultControlPanel(goToPanel.getResourceBundle());
                goToPanel.setCursorPosition(codeArea.getCaretPosition().getDataPosition());
                goToPanel.setMaxPosition(codeArea.getDataSize());
                JPanel dialogPanel = WindowUtils.createDialogPanel(goToPanel, goToControlPanel);
                WindowUtils.assignGlobalKeyListener(dialogPanel, goToControlPanel.createOkCancelListener());
                final DialogWrapper dialog = DialogUtils.createDialog(dialogPanel, "Go To Position",
                        goToPanel.getInitFocusComponent());
                goToControlPanel.setHandler(new DefaultControlHandler() {
                    @Override
                    public void controlActionPerformed(DefaultControlHandler.ControlActionType actionType) {
                        if (actionType == DefaultControlHandler.ControlActionType.OK) {
                            goToPanel.acceptInput();
                            codeArea.setCaretPosition(goToPanel.getGoToPosition());
                        }

                        dialog.close(0);
                    }
                });
                dialog.showAndGet();
            }
        };
    }
    return goToLineAction;
}

From source file:org.exbin.deltahex.intellij.panel.DeltaHexOptionsPanel.java

License:Open Source License

private void selectFontButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_selectFontButtonActionPerformed
    final TextFontPanel textFontPanel = new TextFontPanel();

    DefaultControlPanel textFontControlPanel = new DefaultControlPanel();
    textFontPanel.setStoredFont(deltaHexFont);
    textFontPanel.setVisible(true);/*w ww. ja  va2s. co m*/
    JPanel dialogPanel = WindowUtils.createDialogPanel(textFontPanel, textFontControlPanel);
    WindowUtils.assignGlobalKeyListener(dialogPanel, textFontControlPanel.createOkCancelListener());
    final DialogWrapper dialog = DialogUtils.createDialog(dialogPanel, "Select Font");

    textFontControlPanel.setHandler(new DefaultControlHandler() {
        @Override
        public void controlActionPerformed(DefaultControlHandler.ControlActionType actionType) {
            if (actionType == DefaultControlHandler.ControlActionType.OK) {
                deltaHexFont = textFontPanel.getStoredFont();
                updateFontTextField();
                useDefaultFontCheckBox.setSelected(false);
            }

            dialog.close(0);
        }
    });
    dialog.showAndGet();
}

From source file:org.exbin.deltahex.intellij.panel.HexSearchPanel.java

License:Apache License

private void optionsButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_optionsButtonActionPerformed
    cancelSearch();// w  w  w.j av  a 2s  .  c  om
    final FindHexPanel findHexPanel = new FindHexPanel();
    findHexPanel.setSelected();
    findHexPanel.setSearchHistory(searchHistory);
    findHexPanel.setSearchParameters(searchParameters);
    replaceParameters.setPerformReplace(replaceMode);
    findHexPanel.setReplaceParameters(replaceParameters);
    findHexPanel.setHexCodePopupMenuHandler(hexCodePopupMenuHandler);
    DefaultControlPanel controlPanel = new DefaultControlPanel(findHexPanel.getResourceBundle());
    JPanel dialogPanel = WindowUtils.createDialogPanel(findHexPanel, controlPanel);
    final DialogWrapper dialog = DialogUtils.createDialog(dialogPanel, "Find Text");
    findHexPanel.setMultilineEditorListener(new FindHexPanel.MultilineEditorListener() {
        @Override
        public SearchCondition multilineEdit(SearchCondition condition) {
            final HexMultilinePanel multilinePanel = new HexMultilinePanel();
            multilinePanel.setHexCodePopupMenuHandler(hexCodePopupMenuHandler);
            multilinePanel.setCondition(condition);
            DefaultControlPanel controlPanel = new DefaultControlPanel();
            JPanel dialogPanel = WindowUtils.createDialogPanel(multilinePanel, controlPanel);
            final DialogWrapper multilineDialog = DialogUtils.createDialog(dialogPanel, "Multiline Hex/Text");
            final SearchConditionResult result = new SearchConditionResult();
            controlPanel.setHandler(new DefaultControlHandler() {
                @Override
                public void controlActionPerformed(DefaultControlHandler.ControlActionType actionType) {
                    if (actionType == DefaultControlHandler.ControlActionType.OK) {
                        result.searchCondition = multilinePanel.getCondition();
                        updateFindStatus();
                    }

                    multilineDialog.close(0);
                }
            });
            WindowUtils.assignGlobalKeyListener(multilineDialog.getWindow(),
                    controlPanel.createOkCancelListener());
            // multilineDialog.setLocationRelativeTo(dialog);
            multilineDialog.showAndGet();
            multilinePanel.detachMenu();
            return result.searchCondition;
        }

        class SearchConditionResult {

            SearchCondition searchCondition = null;
        }
    });
    controlPanel.setHandler(new DefaultControlHandler() {
        @Override
        public void controlActionPerformed(DefaultControlHandler.ControlActionType actionType) {
            if (actionType == ControlActionType.OK) {
                SearchParameters dialogSearchParameters = findHexPanel.getSearchParameters();
                ((SearchHistoryModel) findComboBox.getModel())
                        .addSearchCondition(dialogSearchParameters.getCondition());
                dialogSearchParameters.setFromParameters(dialogSearchParameters);
                findComboBoxEditorComponent.setItem(dialogSearchParameters.getCondition());
                updateFindStatus();

                ReplaceParameters dialogReplaceParameters = findHexPanel.getReplaceParameters();
                switchReplaceMode(dialogReplaceParameters.isPerformReplace());
                hexSearchPanelApi.performFind(dialogSearchParameters);
            }
            findHexPanel.detachMenu();
            dialog.close(0);
        }
    });
    WindowUtils.assignGlobalKeyListener(dialog.getWindow(), controlPanel.createOkCancelListener());
    //        dialog.setLocationRelativeTo(frameModule.getFrame());
    dialog.showAndGet();
}