mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
fix for checkbox tree rendering under GTK L&F moved to CheckboxTreeBase class to avoid duplications
This commit is contained in:
@@ -22,7 +22,6 @@ import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.PlatformIcons;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.containers.Convertor;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import com.intellij.xdebugger.XDebuggerBundle;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -30,9 +29,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
import javax.swing.*;
|
||||
import javax.swing.tree.DefaultTreeModel;
|
||||
import javax.swing.tree.TreePath;
|
||||
import java.awt.*;
|
||||
import java.util.*;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author Eugene Zhuravlev
|
||||
@@ -614,11 +611,6 @@ public class BreakpointTree extends CheckboxTree {
|
||||
|
||||
private static class BreakpointTreeCellRenderer extends CheckboxTreeCellRenderer {
|
||||
public void customizeRenderer(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()){
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
if (value instanceof CheckedTreeNode) {
|
||||
final CheckedTreeNode node = (CheckedTreeNode)value;
|
||||
final TreeDescriptor descriptor = getDescriptor(node);
|
||||
|
||||
@@ -19,7 +19,6 @@ import com.intellij.ui.CheckboxTree;
|
||||
import com.intellij.ui.CheckedTreeNode;
|
||||
import com.intellij.ui.TreeSpeedSearch;
|
||||
import com.intellij.util.containers.Convertor;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -91,11 +90,6 @@ public class FrameworksTree extends CheckboxTree {
|
||||
|
||||
@Override
|
||||
public void customizeRenderer(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()){
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
if (value instanceof FrameworkSupportNode) {
|
||||
final FrameworkSupportNode node = (FrameworkSupportNode)value;
|
||||
getTextRenderer().append(node.getTitle());
|
||||
|
||||
@@ -34,7 +34,6 @@ import com.intellij.ui.ScrollPaneFactory;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.util.Alarm;
|
||||
import com.intellij.util.ui.ColumnInfo;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import com.intellij.util.ui.update.UiNotifyConnector;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -641,11 +640,6 @@ class TemplateListPanel extends JPanel {
|
||||
final boolean hasFocus) {
|
||||
if (!(value instanceof DefaultMutableTreeNode)) return;
|
||||
value = ((DefaultMutableTreeNode)value).getUserObject();
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()){
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
|
||||
if (value instanceof TemplateImpl) {
|
||||
//getTextRenderer().setIcon(TEMPLATE_ICON);
|
||||
|
||||
@@ -24,7 +24,6 @@ import com.intellij.ui.CheckedTreeNode;
|
||||
import com.intellij.ui.ScrollPaneFactory;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -86,11 +85,6 @@ class ToolsPanel extends JPanel {
|
||||
final boolean hasFocus) {
|
||||
if (!(value instanceof CheckedTreeNode)) return;
|
||||
Object object = ((CheckedTreeNode)value).getUserObject();
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()) {
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
|
||||
if (object instanceof ToolsGroup) {
|
||||
final String groupName = ((ToolsGroup)object).getName();
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
package com.intellij.ui;
|
||||
|
||||
import com.intellij.ui.treeStructure.Tree;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -337,6 +338,11 @@ public class CheckboxTreeBase extends Tree {
|
||||
myCheckbox.setVisible(false);
|
||||
}
|
||||
myTextRenderer.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()) {
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
customizeRenderer(tree, value, selected, expanded, leaf, row, hasFocus);
|
||||
revalidate();
|
||||
|
||||
|
||||
-8
@@ -22,7 +22,6 @@ import com.intellij.pom.Navigatable;
|
||||
import com.intellij.ui.CheckboxTree;
|
||||
import com.intellij.ui.CheckedTreeNode;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import com.intellij.xdebugger.XDebuggerBundle;
|
||||
import com.intellij.xdebugger.breakpoints.XBreakpoint;
|
||||
@@ -38,9 +37,7 @@ import javax.swing.*;
|
||||
import javax.swing.tree.DefaultTreeModel;
|
||||
import javax.swing.tree.TreeNode;
|
||||
import javax.swing.tree.TreePath;
|
||||
import java.awt.*;
|
||||
import java.util.*;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author nik
|
||||
@@ -195,11 +192,6 @@ public class XBreakpointsTree<B extends XBreakpoint<?>> extends CheckboxTree {
|
||||
private static class BreakpointsTreeCellRenderer extends CheckboxTreeCellRenderer {
|
||||
@Override
|
||||
public void customizeRenderer(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()){
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
if (value instanceof BreakpointNode) {
|
||||
BreakpointNode node = (BreakpointNode)value;
|
||||
XBreakpoint breakpoint = node.getBreakpoint();
|
||||
|
||||
@@ -56,7 +56,9 @@ import git4idea.stash.GitChangesSaver;
|
||||
import git4idea.stash.GitShelveChangesSaver;
|
||||
import git4idea.stash.GitStashChangesSaver;
|
||||
import git4idea.ui.GitUIUtil;
|
||||
import git4idea.update.*;
|
||||
import git4idea.update.GitUpdateLikeProcess;
|
||||
import git4idea.update.GitUpdateProcess;
|
||||
import git4idea.update.UpdatePolicyUtils;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -68,11 +70,9 @@ import javax.swing.event.TreeSelectionListener;
|
||||
import javax.swing.tree.DefaultMutableTreeNode;
|
||||
import javax.swing.tree.DefaultTreeModel;
|
||||
import javax.swing.tree.TreePath;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.*;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
import static git4idea.ui.GitUIUtil.notifyError;
|
||||
@@ -882,11 +882,6 @@ public class GitPushActiveBranchesDialog extends DialogWrapper {
|
||||
myCommitTree = new CheckboxTree(new CheckboxTree.CheckboxTreeCellRenderer() {
|
||||
@Override
|
||||
public void customizeRenderer(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()) {
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
ColoredTreeCellRenderer r = getTextRenderer();
|
||||
if (!(value instanceof DefaultMutableTreeNode)) {
|
||||
// unknown node type
|
||||
|
||||
@@ -20,7 +20,6 @@ import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.ui.*;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import com.intellij.vcsUtil.VcsFileUtil;
|
||||
import git4idea.DialogManager;
|
||||
@@ -29,7 +28,6 @@ import git4idea.config.GitVcsSettings;
|
||||
import git4idea.i18n.GitBundle;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
@@ -148,11 +146,6 @@ public class GitConvertFilesDialog extends DialogWrapper {
|
||||
static class FileTreeCellRenderer extends CheckboxTree.CheckboxTreeCellRenderer {
|
||||
@Override
|
||||
public void customizeRenderer(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()){
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
ColoredTreeCellRenderer r = getTextRenderer();
|
||||
if (!(value instanceof CheckedTreeNode)) {
|
||||
// unknown node type
|
||||
|
||||
@@ -25,7 +25,6 @@ import com.intellij.ui.ColoredTreeCellRenderer;
|
||||
import com.intellij.ui.SimpleTextAttributes;
|
||||
import com.intellij.ui.treeStructure.Tree;
|
||||
import com.intellij.util.PlatformIcons;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.tree.TreeUtil;
|
||||
import git4idea.GitBranch;
|
||||
import git4idea.GitTag;
|
||||
@@ -38,7 +37,6 @@ import org.jetbrains.annotations.Nls;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.HashSet;
|
||||
@@ -245,11 +243,6 @@ public class GitRefspecAddRefsDialog extends DialogWrapper {
|
||||
final int row,
|
||||
final boolean hasFocus) {
|
||||
if (!(value instanceof CheckedTreeNode)) return;
|
||||
// Fix GTK background
|
||||
if (UIUtil.isUnderGTKLookAndFeel()) {
|
||||
final Color background = selected ? UIUtil.getTreeSelectionBackground() : UIUtil.getTreeTextBackground();
|
||||
UIUtil.changeBackGround(this, background);
|
||||
}
|
||||
final CheckedTreeNode node = (CheckedTreeNode)value;
|
||||
final Object userObject = node.getUserObject();
|
||||
String text;
|
||||
|
||||
Reference in New Issue
Block a user