mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
+9
-2
@@ -47,8 +47,15 @@ public class ShowReferringObjectsAction extends XDebuggerTreeActionBase {
|
||||
|
||||
@Override
|
||||
protected void perform(XValueNodeImpl node, @NotNull String nodeName, AnActionEvent e) {
|
||||
if (node.getValueContainer() instanceof JavaValue) {
|
||||
JavaValue javaValue = ((JavaValue)node.getValueContainer());
|
||||
XValue container = node.getValueContainer();
|
||||
JavaValue javaValue = null;
|
||||
if (container instanceof ReferringObjectsValue) {
|
||||
javaValue = ((ReferringObjectsValue)container).myJavaValue;
|
||||
}
|
||||
else if (container instanceof JavaValue) {
|
||||
javaValue = ((JavaValue)container);
|
||||
}
|
||||
if (javaValue != null) {
|
||||
XDebuggerTree tree = XDebuggerTree.getTree(e.getDataContext());
|
||||
XInspectDialog dialog = new XInspectDialog(tree.getProject(),
|
||||
tree.getEditorsProvider(),
|
||||
|
||||
@@ -200,19 +200,18 @@ public class PushController implements Disposable {
|
||||
OutgoingResult outgoing = result.get();
|
||||
List<VcsError> errors = outgoing.getErrors();
|
||||
if (!errors.isEmpty()) {
|
||||
final CommitLoader loader = new CommitLoader() {
|
||||
@Override
|
||||
public void reloadCommits() {
|
||||
loadCommits(model, node, false);
|
||||
}
|
||||
};
|
||||
myPushLog.setChildren(node, ContainerUtil.map(errors, new Function<VcsError, DefaultMutableTreeNode>() {
|
||||
@Override
|
||||
public DefaultMutableTreeNode fun(final VcsError error) {
|
||||
VcsLinkedText errorLinkText = new VcsLinkedText(error.getText(), new VcsLinkListener() {
|
||||
@Override
|
||||
public void hyperlinkActivated(@NotNull DefaultMutableTreeNode sourceNode) {
|
||||
error.handleError(loader);
|
||||
error.handleError(new CommitLoader() {
|
||||
@Override
|
||||
public void reloadCommits() {
|
||||
loadCommits(model, node, false);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
return new TextWithLinkNode(errorLinkText);
|
||||
|
||||
@@ -18,6 +18,7 @@ package com.intellij.openapi.editor;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
@@ -27,5 +28,5 @@ import java.util.Collection;
|
||||
public abstract class EditorLinePainter {
|
||||
public static final ExtensionPointName<EditorLinePainter> EP_NAME = ExtensionPointName.create("com.intellij.editor.linePainter");
|
||||
|
||||
public abstract Collection<LineExtensionInfo> getLineExtensions(Project project, VirtualFile file, int lineNumber);
|
||||
public abstract Collection<LineExtensionInfo> getLineExtensions(@NotNull Project project, @NotNull VirtualFile file, int lineNumber);
|
||||
}
|
||||
|
||||
@@ -2767,16 +2767,19 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
|
||||
if (collapsedFolderAt == null) {
|
||||
int i = drawStringWithSoftWraps(g, chars, start, lEnd - lIterator.getSeparatorLength(), position, clip, effectColor,
|
||||
effectType, fontType, currentColor, logicalPosition);
|
||||
for (EditorLinePainter painter : EditorLinePainter.EP_NAME.getExtensions()) {
|
||||
Collection<LineExtensionInfo> extensions = painter.getLineExtensions(myProject, getVirtualFile(), lIterator.getLineNumber());
|
||||
if (extensions != null && !extensions.isEmpty()) {
|
||||
for (LineExtensionInfo info : extensions) {
|
||||
drawStringWithSoftWraps(g, info.getText(), 0, info.getText().length(), position, clip,
|
||||
info.getEffectColor() == null ? effectColor : info.getEffectColor(),
|
||||
info.getEffectType() == null ? effectType : info.getEffectType(),
|
||||
info.getFontType(),
|
||||
info.getColor() == null ? currentColor : info.getColor(),
|
||||
logicalPosition);
|
||||
final VirtualFile file = getVirtualFile();
|
||||
if (myProject != null && file != null && !isOneLineMode()) {
|
||||
for (EditorLinePainter painter : EditorLinePainter.EP_NAME.getExtensions()) {
|
||||
Collection<LineExtensionInfo> extensions = painter.getLineExtensions(myProject, file, lIterator.getLineNumber());
|
||||
if (extensions != null && !extensions.isEmpty()) {
|
||||
for (LineExtensionInfo info : extensions) {
|
||||
drawStringWithSoftWraps(g, info.getText(), 0, info.getText().length(), position, clip,
|
||||
info.getEffectColor() == null ? effectColor : info.getEffectColor(),
|
||||
info.getEffectType() == null ? effectType : info.getEffectType(),
|
||||
info.getFontType(),
|
||||
info.getColor() == null ? currentColor : info.getColor(),
|
||||
logicalPosition);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -27,6 +27,7 @@ import com.intellij.xdebugger.frame.presentation.XValuePresentation;
|
||||
import com.intellij.xdebugger.impl.frame.XVariablesView;
|
||||
import com.intellij.xdebugger.impl.ui.tree.nodes.XValueNodeImpl;
|
||||
import com.intellij.xdebugger.impl.ui.tree.nodes.XValueTextRendererImpl;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.awt.*;
|
||||
import java.util.ArrayList;
|
||||
@@ -39,7 +40,7 @@ import java.util.Set;
|
||||
*/
|
||||
public class XDebuggerEditorLinePainter extends EditorLinePainter {
|
||||
@Override
|
||||
public Collection<LineExtensionInfo> getLineExtensions(Project project, VirtualFile file, int lineNumber) {
|
||||
public Collection<LineExtensionInfo> getLineExtensions(@NotNull Project project, @NotNull VirtualFile file, int lineNumber) {
|
||||
if (!Registry.is("ide.debugger.inline")) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,100 @@
|
||||
[Settings]
|
||||
NumFields=6
|
||||
|
||||
[Field 1]
|
||||
Type=checkbox
|
||||
Left=5
|
||||
Right=100
|
||||
Top=10
|
||||
Bottom=20
|
||||
State=0
|
||||
|
||||
[Field 2]
|
||||
Type=checkbox
|
||||
Left=120
|
||||
Right=-1
|
||||
Top=10
|
||||
Bottom=20
|
||||
State=0
|
||||
|
||||
[Field 3]
|
||||
Type=GroupBox
|
||||
Left=1
|
||||
Right=-1
|
||||
Top=35
|
||||
Bottom=65
|
||||
Text=Choice Python version
|
||||
|
||||
[Field 4]
|
||||
Type=RadioButton
|
||||
Left=5
|
||||
Right=45
|
||||
Top=50
|
||||
Bottom=60
|
||||
State=1
|
||||
Text=Python 2
|
||||
|
||||
[Field 5]
|
||||
Type=RadioButton
|
||||
Left=95
|
||||
Right=135
|
||||
Top=50
|
||||
Bottom=60
|
||||
State=0
|
||||
Text=Python 3
|
||||
|
||||
[Field 6]
|
||||
Type=GroupBox
|
||||
Left=1
|
||||
Right=-1
|
||||
Top=75
|
||||
Bottom=105
|
||||
Text=Create Associations
|
||||
|
||||
[Field 7]
|
||||
Type=checkbox
|
||||
Left=5
|
||||
Right=45
|
||||
Top=90
|
||||
Bottom=100
|
||||
State=0
|
||||
|
||||
[Field 8]
|
||||
Type=checkbox
|
||||
Left=50
|
||||
Right=90
|
||||
Top=90
|
||||
Bottom=100
|
||||
State=0
|
||||
|
||||
[Field 9]
|
||||
Type=checkbox
|
||||
Left=95
|
||||
Right=135
|
||||
Top=90
|
||||
Bottom=100
|
||||
State=0
|
||||
|
||||
[Field 10]
|
||||
Type=checkbox
|
||||
Left=140
|
||||
Right=180
|
||||
Top=90
|
||||
Bottom=100
|
||||
State=0
|
||||
|
||||
[Field 11]
|
||||
Type=checkbox
|
||||
Left=185
|
||||
Right=225
|
||||
Top=90
|
||||
Bottom=100
|
||||
State=0
|
||||
|
||||
[Field 12]
|
||||
Type=checkbox
|
||||
Left=230
|
||||
Right=270
|
||||
Top=90
|
||||
Bottom=100
|
||||
State=0
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user