mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
ToolbarDecorators added for some new icons
This commit is contained in:
@@ -20,6 +20,9 @@ import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
import com.intellij.ui.classFilter.ClassFilter;
|
||||
import com.intellij.ui.classFilter.ClassFilterEditor;
|
||||
import com.intellij.util.IconUtil;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
/**
|
||||
* User: lex
|
||||
@@ -29,7 +32,6 @@ import com.intellij.ui.classFilter.ClassFilterEditor;
|
||||
public class InstanceFilterEditor extends ClassFilterEditor {
|
||||
public InstanceFilterEditor(Project project) {
|
||||
super(project);
|
||||
myAddPatternButton.setVisible(false);
|
||||
}
|
||||
|
||||
protected void addClassFilter() {
|
||||
@@ -51,6 +53,16 @@ public class InstanceFilterEditor extends ClassFilterEditor {
|
||||
return DebuggerBundle.message("button.add");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Icon getAddButtonIcon() {
|
||||
return IconUtil.getAddIcon();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean addPatternButtonVisible() {
|
||||
return false;
|
||||
}
|
||||
|
||||
protected ClassFilter createFilter(String pattern) {
|
||||
try {
|
||||
Long.parseLong(pattern);
|
||||
|
||||
@@ -47,7 +47,6 @@ import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
public class ClassFilterEditor extends JPanel implements ComponentWithEmptyText {
|
||||
protected AnActionButton myAddPatternButton;
|
||||
protected JBTable myTable = null;
|
||||
protected FilterTableModel myTableModel = null;
|
||||
protected final Project myProject;
|
||||
@@ -68,20 +67,21 @@ public class ClassFilterEditor extends JPanel implements ComponentWithEmptyText
|
||||
myPatternsHelpId = patternsHelpId;
|
||||
myTable = new JBTable();
|
||||
|
||||
add(
|
||||
ToolbarDecorator.createDecorator(myTable)
|
||||
.addExtraAction(new AnActionButton(getAddButtonText(), IconUtil.getAddClassIcon()) {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
addClassFilter();
|
||||
}
|
||||
final ToolbarDecorator decorator = ToolbarDecorator.createDecorator(myTable)
|
||||
.addExtraAction(new AnActionButton(getAddButtonText(), getAddButtonIcon()) {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
addClassFilter();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateButton(AnActionEvent e) {
|
||||
super.updateButton(e);
|
||||
setEnabled(!myProject.isDefault());
|
||||
}
|
||||
}).addExtraAction(myAddPatternButton = new AnActionButton(getAddPatternButtonText(), IconUtil.getAddPatternIcon()) {
|
||||
@Override
|
||||
public void updateButton(AnActionEvent e) {
|
||||
super.updateButton(e);
|
||||
setEnabled(!myProject.isDefault());
|
||||
}
|
||||
});
|
||||
if (addPatternButtonVisible()) {
|
||||
decorator.addExtraAction(new AnActionButton(getAddPatternButtonText(), getAddPatternButtonIcon()) {
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
addPatternFilter();
|
||||
@@ -92,14 +92,15 @@ public class ClassFilterEditor extends JPanel implements ComponentWithEmptyText
|
||||
super.updateButton(e);
|
||||
setEnabled(!myProject.isDefault());
|
||||
}
|
||||
}).setRemoveAction(new AnActionButtonRunnable() {
|
||||
@Override
|
||||
public void run(AnActionButton button) {
|
||||
TableUtil.removeSelectedItems(myTable);
|
||||
}
|
||||
}).setButtonComparator(getAddButtonText(), getAddPatternButtonText(), "Remove")
|
||||
.disableUpDownActions().createPanel(), BorderLayout.CENTER
|
||||
);
|
||||
});
|
||||
}
|
||||
add(decorator.setRemoveAction(new AnActionButtonRunnable() {
|
||||
@Override
|
||||
public void run(AnActionButton button) {
|
||||
TableUtil.removeSelectedItems(myTable);
|
||||
}
|
||||
}).setButtonComparator(getAddButtonText(), getAddPatternButtonText(), "Remove")
|
||||
.disableUpDownActions().createPanel(), BorderLayout.CENTER);
|
||||
|
||||
myChooserFilter = classFilter;
|
||||
myProject = project;
|
||||
@@ -137,6 +138,18 @@ public class ClassFilterEditor extends JPanel implements ComponentWithEmptyText
|
||||
return UIBundle.message("button.add.pattern");
|
||||
}
|
||||
|
||||
protected Icon getAddButtonIcon() {
|
||||
return IconUtil.getAddClassIcon();
|
||||
}
|
||||
|
||||
protected Icon getAddPatternButtonIcon() {
|
||||
return IconUtil.getAddPatternIcon();
|
||||
}
|
||||
|
||||
protected boolean addPatternButtonVisible() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public void setFilters(com.intellij.ui.classFilter.ClassFilter[] filters) {
|
||||
myTableModel.setFilters(filters);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user