GP-2795 - Refactor of ButtonPanelFactory

This commit is contained in:
dragonmacher
2022-12-12 18:54:57 -05:00
parent e47bfa4f51
commit 8379285044
29 changed files with 364 additions and 555 deletions
@@ -25,9 +25,10 @@ import java.util.List;
import javax.swing.*;
import docking.DialogComponentProvider;
import docking.options.editor.ButtonPanelFactory;
import docking.widgets.button.BrowseButton;
import docking.widgets.combobox.GComboBox;
import docking.widgets.filechooser.GhidraFileChooser;
import docking.widgets.filechooser.GhidraFileChooserMode;
import docking.widgets.label.GDLabel;
import docking.widgets.label.GLabel;
import ghidra.app.script.SelectLanguageDialog;
@@ -148,11 +149,11 @@ public class PopulateFidDialog extends DialogComponentProvider {
JPanel panel = new JPanel(new BorderLayout());
symbolsFileTextField = new JTextField();
panel.add(symbolsFileTextField, BorderLayout.CENTER);
JButton browseButton = createBrowseButton();
JButton browseButton = new BrowseButton();
browseButton.addActionListener(e -> {
GhidraFileChooser chooser = new GhidraFileChooser(tool.getToolFrame());
chooser.setTitle("Choose Common Symbols File");
chooser.setFileSelectionMode(GhidraFileChooser.FILES_ONLY);
chooser.setFileSelectionMode(GhidraFileChooserMode.FILES_ONLY);
// chooser.setFileFilter(null);
File selectedFile = chooser.getSelectedFile();
if (selectedFile != null) {
@@ -168,7 +169,7 @@ public class PopulateFidDialog extends DialogComponentProvider {
JPanel panel = new JPanel(new BorderLayout());
languageIdField = new JTextField();
panel.add(languageIdField, BorderLayout.CENTER);
JButton browseButton = createBrowseButton();
JButton browseButton = new BrowseButton();
browseButton.addActionListener(e -> {
SelectLanguageDialog selectLanguageDialog =
new SelectLanguageDialog("Select Language", "Ok");
@@ -220,7 +221,7 @@ public class PopulateFidDialog extends DialogComponentProvider {
domainFolderField = new JTextField();
domainFolderField.setEditable(false);
panel.add(domainFolderField, BorderLayout.CENTER);
JButton browseButton = createBrowseButton();
JButton browseButton = new BrowseButton();
browseButton.addActionListener(e -> {
final DataTreeDialog dialog = new DataTreeDialog(tool.getToolFrame(),
"Choose Root Folder", DataTreeDialog.CHOOSE_FOLDER);
@@ -279,10 +280,6 @@ public class PopulateFidDialog extends DialogComponentProvider {
return true;
}
private JButton createBrowseButton() {
return ButtonPanelFactory.createButton(ButtonPanelFactory.BROWSE_TYPE);
}
private static class LibraryChoice {
private final String name;
private final LibraryRecord libraryRecord;