mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
breakpoints ui. master breakpoint chooser fixes
This commit is contained in:
@@ -24,7 +24,9 @@ import com.intellij.openapi.ui.popup.JBPopup;
|
||||
import com.intellij.openapi.ui.popup.JBPopupListener;
|
||||
import com.intellij.openapi.ui.popup.LightweightWindowEvent;
|
||||
import com.intellij.openapi.util.Key;
|
||||
import com.intellij.openapi.util.UserDataHolderBase;
|
||||
import com.intellij.ui.popup.util.DetailView;
|
||||
import com.intellij.ui.popup.util.ItemWrapper;
|
||||
import com.intellij.xdebugger.breakpoints.ui.BreakpointItem;
|
||||
import com.intellij.xdebugger.impl.breakpoints.ui.tree.BreakpointMasterDetailPopupBuilder;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -62,8 +64,7 @@ public class BreakpointChooser {
|
||||
public void setSelectedBreakpoint(Object selectedBreakpoint) {
|
||||
mySelectedBreakpoint = selectedBreakpoint;
|
||||
myBreakpointItem = selectedBreakpoint != null ? new JavaBreakpointItem(null, (Breakpoint)selectedBreakpoint) : null;
|
||||
updatePresentation(myComboBoxAction.getTemplatePresentation(), myBreakpointItem);
|
||||
myActionToolbar.getComponent().repaint();
|
||||
updatePresentation(myComboBoxAction.getTemplatePresentation(), myBreakpointItem);
|
||||
}
|
||||
|
||||
private void pop(DetailView.PreviewEditorState pushed) {
|
||||
@@ -80,7 +81,7 @@ public class BreakpointChooser {
|
||||
void breakpointChosen(Project project, BreakpointItem breakpointItem, JBPopup popup);
|
||||
}
|
||||
|
||||
public BreakpointChooser(Project project, Delegate delegate) {
|
||||
public BreakpointChooser(Project project, Delegate delegate, Breakpoint baseBreakpoint) {
|
||||
myProject = project;
|
||||
myDelegate = delegate;
|
||||
|
||||
@@ -146,7 +147,7 @@ public class BreakpointChooser {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
setSelectedBreakpoint(baseBreakpoint);
|
||||
myActionToolbar = ActionManager.getInstance().createActionToolbar("asdad", new DefaultActionGroup(myComboBoxAction), true);
|
||||
|
||||
}
|
||||
@@ -156,7 +157,7 @@ public class BreakpointChooser {
|
||||
}
|
||||
|
||||
private void updatePresentation(Presentation presentation, BreakpointItem breakpointItem) {
|
||||
if (breakpointItem != null) {
|
||||
if (breakpointItem != null && breakpointItem.getBreakpoint() != null) {
|
||||
presentation.setIcon(breakpointItem.getIcon());
|
||||
presentation.setText(breakpointItem.getDisplayText());
|
||||
}
|
||||
@@ -173,9 +174,11 @@ public class BreakpointChooser {
|
||||
private class MyDetailView implements DetailView {
|
||||
|
||||
private final PreviewEditorState myPushed;
|
||||
private ItemWrapper myCurrentItem;
|
||||
|
||||
public MyDetailView(PreviewEditorState pushed) {
|
||||
myPushed = pushed;
|
||||
putUserData(BreakpointItem.EDITOR_ONLY, Boolean.TRUE);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -210,14 +213,30 @@ public class BreakpointChooser {
|
||||
return myDetailView.getEditorState();
|
||||
}
|
||||
|
||||
public void setCurrentItem(ItemWrapper currentItem) {
|
||||
myCurrentItem = currentItem;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemWrapper getCurrentItem() {
|
||||
return myCurrentItem;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasEditorOnly() {
|
||||
return true;
|
||||
}
|
||||
|
||||
UserDataHolderBase myDataHolderBase = new UserDataHolderBase();
|
||||
|
||||
@Override
|
||||
public <T> T getUserData(@NotNull Key<T> key) {
|
||||
return myDetailView.getUserData(key);
|
||||
return myDataHolderBase.getUserData(key);
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void putUserData(@NotNull Key<T> key, @Nullable T value) {
|
||||
myDetailView.putUserData(key, value);
|
||||
myDataHolderBase.putUserData(key, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+97
-58
@@ -20,6 +20,7 @@
|
||||
*/
|
||||
package com.intellij.debugger.ui.breakpoints;
|
||||
|
||||
import com.intellij.debugger.DebuggerBundle;
|
||||
import com.intellij.debugger.DebuggerManagerEx;
|
||||
import com.intellij.debugger.InstanceFilter;
|
||||
import com.intellij.debugger.engine.evaluation.CodeFragmentKind;
|
||||
@@ -42,6 +43,7 @@ import com.intellij.psi.PsiClass;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.ui.FieldPanel;
|
||||
import com.intellij.ui.MultiLineTooltipUI;
|
||||
import com.intellij.ui.SimpleColoredComponent;
|
||||
import com.intellij.ui.components.JBCheckBox;
|
||||
import com.intellij.ui.popup.util.DetailView;
|
||||
import com.intellij.util.IJSwingUtilities;
|
||||
@@ -61,7 +63,7 @@ import java.util.List;
|
||||
|
||||
public abstract class BreakpointPropertiesPanel {
|
||||
|
||||
private final BreakpointChooser myMasterBreakpointChooser;
|
||||
private BreakpointChooser myMasterBreakpointChooser;
|
||||
|
||||
public void setDetailView(DetailView detailView) {
|
||||
myDetailView = detailView;
|
||||
@@ -284,24 +286,6 @@ public abstract class BreakpointPropertiesPanel {
|
||||
|
||||
myLogExpressionCombo = new DebuggerExpressionComboBox(project, "LineBreakpoint logMessage");
|
||||
|
||||
myMasterBreakpointChooser = new BreakpointChooser(project, new BreakpointChooser.Delegate() {
|
||||
@Override
|
||||
public void breakpointChosen(Project project, BreakpointItem item, JBPopup popup) {
|
||||
final boolean enabled = item != null && item.getBreakpoint() != null;
|
||||
myLeaveEnabledRadioButton.setEnabled(enabled);
|
||||
myDisableAgainRadio.setEnabled(enabled);
|
||||
myEnableOrDisableLabel.setEnabled(enabled);
|
||||
|
||||
if (item != null) {
|
||||
|
||||
saveMasterBreakpoint();
|
||||
}
|
||||
|
||||
updateMasterBreakpointPanel(findMasterBreakpointRule());
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
myInstanceFiltersField = new FieldPanel(new MyTextField(), "", null,
|
||||
new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
@@ -357,8 +341,7 @@ public abstract class BreakpointPropertiesPanel {
|
||||
|
||||
insert(myConditionComboPanel, conditionPanel);
|
||||
insert(myLogExpressionComboPanel, myLogExpressionCombo);
|
||||
//insert(myDependentBreakpointComboPanel, baseBreakpointCombo);
|
||||
insert(myDependentBreakpointComboPanel, myMasterBreakpointChooser.getComponent());
|
||||
|
||||
insert(myInstanceFiltersFieldPanel, myInstanceFiltersField);
|
||||
insert(myClassFiltersFieldPanel, myClassFiltersField);
|
||||
|
||||
@@ -390,6 +373,68 @@ public abstract class BreakpointPropertiesPanel {
|
||||
break;
|
||||
}
|
||||
}
|
||||
items.add(new BreakpointItem() {
|
||||
@Override
|
||||
public Object getBreakpoint() {
|
||||
return null; //To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
return false; //To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setEnabled(boolean state) {
|
||||
//To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setupGenericRenderer(SimpleColoredComponent renderer, boolean plainView) {
|
||||
renderer.clear();
|
||||
renderer.append(getDisplayText());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Icon getIcon() {
|
||||
return null; //To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDisplayText() {
|
||||
return DebuggerBundle.message("value.none");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean navigate() {
|
||||
return false; //To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public String speedSearchText() {
|
||||
return null; //To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public String footerText() {
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doUpdateDetailView(DetailView panel, boolean editorOnly) {
|
||||
//To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean allowedToRemove() {
|
||||
return false; //To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removed(Project project) {
|
||||
//To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
});
|
||||
return items;
|
||||
}
|
||||
|
||||
@@ -414,9 +459,13 @@ public abstract class BreakpointPropertiesPanel {
|
||||
else {
|
||||
EnableBreakpointRule rule = findMasterBreakpointRule();
|
||||
boolean selected = myLeaveEnabledRadioButton.isSelected();
|
||||
if (rule != null && (rule.getMasterBreakpoint() != masterBreakpoint || rule.isLeaveEnabled() != selected ) ) {
|
||||
getBreakpointManager(myProject).removeBreakpointRule(rule);
|
||||
|
||||
if (rule != null) {
|
||||
if (rule.getMasterBreakpoint() != masterBreakpoint || rule.isLeaveEnabled() != selected) {
|
||||
getBreakpointManager(myProject).removeBreakpointRule(rule);
|
||||
}
|
||||
else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
getBreakpointManager(myProject).addBreakpointRule(new EnableBreakpointRule(getBreakpointManager(myProject),
|
||||
masterBreakpoint,
|
||||
@@ -569,14 +618,35 @@ public abstract class BreakpointPropertiesPanel {
|
||||
}
|
||||
|
||||
private void initMasterBreakpointPanel() {
|
||||
myMasterBreakpointChooser.setBreakpointItems(getBreakpointItemsExceptMy());
|
||||
|
||||
final EnableBreakpointRule rule = findMasterBreakpointRule();
|
||||
|
||||
final Breakpoint baseBreakpoint = rule != null ? rule.getMasterBreakpoint() : null;
|
||||
updateMasterBreakpointPanel(rule);
|
||||
|
||||
myMasterBreakpointChooser.setSelectedBreakpoint(baseBreakpoint);
|
||||
|
||||
myMasterBreakpointChooser = new BreakpointChooser(myProject, new BreakpointChooser.Delegate() {
|
||||
@Override
|
||||
public void breakpointChosen(Project project, BreakpointItem item, JBPopup popup) {
|
||||
final boolean enabled = item != null && item.getBreakpoint() != null;
|
||||
myLeaveEnabledRadioButton.setEnabled(enabled);
|
||||
myDisableAgainRadio.setEnabled(enabled);
|
||||
myEnableOrDisableLabel.setEnabled(enabled);
|
||||
|
||||
if (item != null) {
|
||||
|
||||
saveMasterBreakpoint();
|
||||
}
|
||||
|
||||
updateMasterBreakpointPanel(findMasterBreakpointRule());
|
||||
|
||||
}
|
||||
}, baseBreakpoint);
|
||||
|
||||
insert(myDependentBreakpointComboPanel, myMasterBreakpointChooser.getComponent());
|
||||
|
||||
|
||||
myMasterBreakpointChooser.setBreakpointItems(getBreakpointItemsExceptMy());
|
||||
|
||||
}
|
||||
|
||||
private @Nullable EnableBreakpointRule findMasterBreakpointRule() {
|
||||
@@ -793,37 +863,6 @@ public abstract class BreakpointPropertiesPanel {
|
||||
return myPanel;
|
||||
}
|
||||
|
||||
private static class ComboboxItem {
|
||||
private final Breakpoint breakpoint;
|
||||
|
||||
public ComboboxItem() {
|
||||
breakpoint = null;
|
||||
}
|
||||
|
||||
public ComboboxItem(@NotNull final Breakpoint breakpoint) {
|
||||
this.breakpoint = breakpoint;
|
||||
}
|
||||
|
||||
public Breakpoint getBreakpoint() {
|
||||
return breakpoint;
|
||||
}
|
||||
|
||||
public boolean equals(final Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
|
||||
final ComboboxItem comboboxItem = (ComboboxItem)o;
|
||||
|
||||
if (breakpoint != null ? !breakpoint.equals(comboboxItem.breakpoint) : comboboxItem.breakpoint != null) return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public int hashCode() {
|
||||
return breakpoint != null ? breakpoint.hashCode() : 0;
|
||||
}
|
||||
}
|
||||
|
||||
private BreakpointManager getBreakpointManager(Project project) {
|
||||
return DebuggerManagerEx.getInstanceEx(project).getBreakpointManager();
|
||||
}
|
||||
|
||||
+16
-14
@@ -72,21 +72,23 @@ class JavaBreakpointItem extends BreakpointItem {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void doUpdateDetailView(DetailView panel) {
|
||||
BreakpointPropertiesPanel breakpointPropertiesPanel = myBreakpointFactory != null ? myBreakpointFactory
|
||||
.createBreakpointPropertiesPanel(myBreakpoint.getProject(), false) : null;
|
||||
if (breakpointPropertiesPanel != null) {
|
||||
breakpointPropertiesPanel.setSaveOnRemove(true);
|
||||
breakpointPropertiesPanel.setDetailView(panel);
|
||||
}
|
||||
protected void doUpdateDetailView(DetailView panel, boolean editorOnly) {
|
||||
if (!editorOnly) {
|
||||
BreakpointPropertiesPanel breakpointPropertiesPanel = myBreakpointFactory != null ? myBreakpointFactory
|
||||
.createBreakpointPropertiesPanel(myBreakpoint.getProject(), false) : null;
|
||||
|
||||
if (breakpointPropertiesPanel != null) {
|
||||
breakpointPropertiesPanel.initFrom(myBreakpoint, true);
|
||||
final JPanel mainPanel = breakpointPropertiesPanel.getPanel();
|
||||
panel.setDetailPanel(mainPanel);
|
||||
}
|
||||
else {
|
||||
panel.setDetailPanel(null);
|
||||
if (breakpointPropertiesPanel != null) {
|
||||
breakpointPropertiesPanel.initFrom(myBreakpoint, true);
|
||||
|
||||
breakpointPropertiesPanel.setSaveOnRemove(true);
|
||||
breakpointPropertiesPanel.setDetailView(panel);
|
||||
|
||||
final JPanel mainPanel = breakpointPropertiesPanel.getPanel();
|
||||
panel.setDetailPanel(mainPanel);
|
||||
}
|
||||
else {
|
||||
panel.setDetailPanel(null);
|
||||
}
|
||||
}
|
||||
|
||||
if (myBreakpoint instanceof BreakpointWithHighlighter) {
|
||||
|
||||
@@ -45,6 +45,12 @@ public interface DetailView extends UserDataHolder {
|
||||
|
||||
PreviewEditorState getEditorState();
|
||||
|
||||
ItemWrapper getCurrentItem();
|
||||
|
||||
boolean hasEditorOnly();
|
||||
|
||||
void setCurrentItem(ItemWrapper item);
|
||||
|
||||
class PreviewEditorState {
|
||||
|
||||
public static PreviewEditorState EMPTY = new PreviewEditorState(null, null, null);
|
||||
|
||||
@@ -22,21 +22,31 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
public interface ItemWrapper {
|
||||
void setupRenderer(ColoredListCellRenderer renderer, Project project, boolean selected);
|
||||
public abstract class ItemWrapper {
|
||||
public abstract void setupRenderer(ColoredListCellRenderer renderer, Project project, boolean selected);
|
||||
|
||||
void setupRenderer(ColoredTreeCellRenderer renderer);
|
||||
public abstract void setupRenderer(ColoredTreeCellRenderer renderer);
|
||||
|
||||
void updateAccessoryView(JComponent label);
|
||||
public abstract void updateAccessoryView(JComponent label);
|
||||
|
||||
String speedSearchText();
|
||||
public abstract String speedSearchText();
|
||||
|
||||
@Nullable
|
||||
String footerText();
|
||||
public abstract String footerText();
|
||||
|
||||
void updateDetailView(DetailView panel);
|
||||
public void updateDetailView(DetailView panel) {
|
||||
if (equals(panel.getCurrentItem())) {
|
||||
return;
|
||||
}
|
||||
|
||||
boolean allowedToRemove();
|
||||
doUpdateDetailView(panel, panel.hasEditorOnly());
|
||||
|
||||
void removed(Project project);
|
||||
panel.setCurrentItem(this);
|
||||
}
|
||||
|
||||
protected abstract void doUpdateDetailView(DetailView panel, boolean editorOnly);
|
||||
|
||||
public abstract boolean allowedToRemove();
|
||||
|
||||
public abstract void removed(Project project);
|
||||
}
|
||||
|
||||
@@ -16,7 +16,6 @@
|
||||
package com.intellij.ui.popup.util;
|
||||
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.popup.JBPopup;
|
||||
import com.intellij.ui.ColoredListCellRenderer;
|
||||
import com.intellij.ui.ColoredTreeCellRenderer;
|
||||
|
||||
@@ -29,7 +28,7 @@ import javax.swing.*;
|
||||
* Time: 21:55
|
||||
* To change this template use File | Settings | File Templates.
|
||||
*/
|
||||
public class SplitterItem implements ItemWrapper {
|
||||
public class SplitterItem extends ItemWrapper {
|
||||
|
||||
private String myText;
|
||||
|
||||
@@ -58,7 +57,7 @@ public class SplitterItem implements ItemWrapper {
|
||||
|
||||
@Override
|
||||
public String speedSearchText() {
|
||||
return ""; //To change body of implemented methods use File | Settings | File Templates.
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -67,7 +66,7 @@ public class SplitterItem implements ItemWrapper {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDetailView(DetailView panel) {
|
||||
protected void doUpdateDetailView(DetailView panel, boolean editorOnly) {
|
||||
//To change body of implemented methods use File | Settings | File Templates.
|
||||
}
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ import java.awt.*;
|
||||
* Time: 2:06 AM
|
||||
* To change this template use File | Settings | File Templates.
|
||||
*/
|
||||
public class BookmarkItem implements ItemWrapper {
|
||||
public class BookmarkItem extends ItemWrapper {
|
||||
private final Bookmark myBookmark;
|
||||
|
||||
public BookmarkItem(Bookmark bookmark) {
|
||||
@@ -112,12 +112,7 @@ public class BookmarkItem implements ItemWrapper {
|
||||
return myBookmark.getFile().getPresentableUrl();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDetailView(final DetailView panel) {
|
||||
doUpdateDetailView(panel);
|
||||
}
|
||||
|
||||
private void doUpdateDetailView(DetailView panel) {
|
||||
protected void doUpdateDetailView(DetailView panel, boolean editorOnly) {
|
||||
panel.navigateInPreviewEditor(DetailView.PreviewEditorState.create(myBookmark.getFile(), myBookmark.getLine()));
|
||||
}
|
||||
|
||||
|
||||
@@ -47,16 +47,17 @@ import java.awt.*;
|
||||
public class DetailViewImpl extends JPanel implements DetailView, UserDataHolder {
|
||||
private final Project myProject;
|
||||
private Editor myEditor;
|
||||
private ItemWrapper myWrapper;
|
||||
private JPanel myDetailPanel;
|
||||
|
||||
private ItemWrapper myWrapper;
|
||||
|
||||
private JPanel myDetailPanel;
|
||||
private JBScrollPane myDetailScrollPanel;
|
||||
|
||||
private JPanel myDetailPanelWrapper;
|
||||
private JLabel myNothingToShow = new JLabel("Nothing to show");
|
||||
private JLabel myNothingToShowInEditor = new JLabel("Nothing to show");
|
||||
private RangeHighlighter myHighlighter;
|
||||
private PreviewEditorState myEditorState = PreviewEditorState.EMPTY;
|
||||
|
||||
public DetailViewImpl(Project project) {
|
||||
super(new BorderLayout());
|
||||
myProject = project;
|
||||
@@ -78,11 +79,25 @@ public class DetailViewImpl extends JPanel implements DetailView, UserDataHolder
|
||||
}
|
||||
}
|
||||
|
||||
public void setCurrentItem(ItemWrapper wrapper) {
|
||||
myWrapper = wrapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PreviewEditorState getEditorState() {
|
||||
return myEditorState;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemWrapper getCurrentItem() {
|
||||
return myWrapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasEditorOnly() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeNotify() {
|
||||
super.removeNotify();
|
||||
|
||||
+2
-13
@@ -41,8 +41,9 @@ import javax.swing.*;
|
||||
* Time: 4:48 AM
|
||||
* To change this template use File | Settings | File Templates.
|
||||
*/
|
||||
public abstract class BreakpointItem implements ItemWrapper {
|
||||
public abstract class BreakpointItem extends ItemWrapper {
|
||||
protected static final Key<Object> BREAKPOINT_ITEM = Key.create("BreakpointItem");
|
||||
public static final Key<Object> EDITOR_ONLY = Key.create("EditorOnly");
|
||||
|
||||
public abstract Object getBreakpoint();
|
||||
|
||||
@@ -99,17 +100,6 @@ public abstract class BreakpointItem implements ItemWrapper {
|
||||
setupGenericRenderer(renderer, plainView);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateDetailView(DetailView panel) {
|
||||
|
||||
if (panel.getUserData(BREAKPOINT_ITEM) == getBreakpoint()) {
|
||||
return;
|
||||
}
|
||||
|
||||
doUpdateDetailView(panel);
|
||||
|
||||
panel.putUserData(BREAKPOINT_ITEM, getBreakpoint());
|
||||
}
|
||||
|
||||
protected abstract void setupGenericRenderer(SimpleColoredComponent renderer, boolean plainView);
|
||||
|
||||
@@ -117,7 +107,6 @@ public abstract class BreakpointItem implements ItemWrapper {
|
||||
|
||||
public abstract String getDisplayText();
|
||||
|
||||
protected abstract void doUpdateDetailView(DetailView panel);
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
|
||||
+16
-13
@@ -32,12 +32,12 @@ import com.intellij.xdebugger.impl.breakpoints.ui.XLightBreakpointPropertiesPane
|
||||
import javax.swing.*;
|
||||
|
||||
/**
|
||||
* Created with IntelliJ IDEA.
|
||||
* User: intendia
|
||||
* Date: 10.05.12
|
||||
* Time: 1:14
|
||||
* To change this template use File | Settings | File Templates.
|
||||
*/
|
||||
* Created with IntelliJ IDEA.
|
||||
* User: intendia
|
||||
* Date: 10.05.12
|
||||
* Time: 1:14
|
||||
* To change this template use File | Settings | File Templates.
|
||||
*/
|
||||
class XBreakpointItem extends BreakpointItem {
|
||||
private final XBreakpoint<?> myBreakpoint;
|
||||
|
||||
@@ -82,7 +82,7 @@ class XBreakpointItem extends BreakpointItem {
|
||||
return ((XBreakpointBase)myBreakpoint).getType().getDisplayText(myBreakpoint);
|
||||
}
|
||||
|
||||
public void doUpdateDetailView(DetailView panel) {
|
||||
public void doUpdateDetailView(DetailView panel, boolean editorOnly) {
|
||||
Project project = ((XBreakpointBase)myBreakpoint).getProject();
|
||||
|
||||
XSourcePosition sourcePosition = myBreakpoint.getSourcePosition();
|
||||
@@ -90,14 +90,18 @@ class XBreakpointItem extends BreakpointItem {
|
||||
if (!showInEditor(panel, sourcePosition.getFile(), sourcePosition.getLine())) {
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
panel.clearEditor();
|
||||
}
|
||||
|
||||
XLightBreakpointPropertiesPanel<XBreakpoint<?>> propertiesPanel =
|
||||
new XLightBreakpointPropertiesPanel<XBreakpoint<?>>(project, getManager(), myBreakpoint, true);
|
||||
propertiesPanel.loadProperties();
|
||||
panel.setDetailPanel(propertiesPanel.getMainPanel());
|
||||
if (!editorOnly) {
|
||||
|
||||
XLightBreakpointPropertiesPanel<XBreakpoint<?>> propertiesPanel =
|
||||
new XLightBreakpointPropertiesPanel<XBreakpoint<?>>(project, getManager(), myBreakpoint, true);
|
||||
propertiesPanel.loadProperties();
|
||||
panel.setDetailPanel(propertiesPanel.getMainPanel());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -127,7 +131,6 @@ class XBreakpointItem extends BreakpointItem {
|
||||
breakpointManager.removeBreakpoint(myBreakpoint);
|
||||
}
|
||||
}.execute();
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user