From 05d570f3c155647a19a378a1adbf26a51cd67ad7 Mon Sep 17 00:00:00 2001 From: Sergey Rieder Date: Fri, 25 Oct 2013 14:49:25 +0400 Subject: [PATCH] IDEA-115037 restrict 1st column movement --- .../src/com/intellij/ui/table/JBTable.java | 54 ++++++++++--------- 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/platform/platform-api/src/com/intellij/ui/table/JBTable.java b/platform/platform-api/src/com/intellij/ui/table/JBTable.java index e0096c8858bb..ea2eebb5a127 100644 --- a/platform/platform-api/src/com/intellij/ui/table/JBTable.java +++ b/platform/platform-api/src/com/intellij/ui/table/JBTable.java @@ -193,30 +193,7 @@ public class JBTable extends JTable implements ComponentWithEmptyText, Component @Override protected JTableHeader createDefaultTableHeader() { - return new JTableHeader(columnModel) { - @Override - public void paint(Graphics g) { - if (myEnableAntialiasing) { - GraphicsUtil.setupAntialiasing(g); - } - super.paint(g); - } - - @Override - public String getToolTipText(final MouseEvent event) { - final TableModel model = getModel(); - if (model instanceof SortableColumnModel) { - final int i = columnAtPoint(event.getPoint()); - final int infoIndex = i >= 0 ? convertColumnIndexToModel(i) : -1; - final ColumnInfo[] columnInfos = ((SortableColumnModel)model).getColumnInfos(); - final String tooltipText = infoIndex >= 0 && infoIndex < columnInfos.length ? columnInfos[infoIndex].getTooltipText() : null; - if (tooltipText != null) { - return tooltipText; - } - } - return super.getToolTipText(event); - } - }; + return new JBTableHeader(); } public boolean isEmpty() { @@ -661,5 +638,34 @@ public class JBTable extends JTable implements ComponentWithEmptyText, Component } } } + + protected class JBTableHeader extends JTableHeader { + public JBTableHeader() { + super(JBTable.this.columnModel); + } + + @Override + public void paint(Graphics g) { + if (myEnableAntialiasing) { + GraphicsUtil.setupAntialiasing(g); + } + super.paint(g); + } + + @Override + public String getToolTipText(final MouseEvent event) { + final TableModel model = getModel(); + if (model instanceof SortableColumnModel) { + final int i = columnAtPoint(event.getPoint()); + final int infoIndex = i >= 0 ? convertColumnIndexToModel(i) : -1; + final ColumnInfo[] columnInfos = ((SortableColumnModel)model).getColumnInfos(); + final String tooltipText = infoIndex >= 0 && infoIndex < columnInfos.length ? columnInfos[infoIndex].getTooltipText() : null; + if (tooltipText != null) { + return tooltipText; + } + } + return super.getToolTipText(event); + } + } }