equal
deleted
inserted
replaced
33 import javax.swing.table.*; |
33 import javax.swing.table.*; |
34 |
34 |
35 import static com.sun.java.swing.plaf.windows.TMSchema.*; |
35 import static com.sun.java.swing.plaf.windows.TMSchema.*; |
36 import static com.sun.java.swing.plaf.windows.XPStyle.*; |
36 import static com.sun.java.swing.plaf.windows.XPStyle.*; |
37 import sun.swing.table.*; |
37 import sun.swing.table.*; |
|
38 import sun.swing.SwingUtilities2; |
38 |
39 |
39 |
40 |
40 public class WindowsTableHeaderUI extends BasicTableHeaderUI { |
41 public class WindowsTableHeaderUI extends BasicTableHeaderUI { |
41 private TableCellRenderer originalHeaderRenderer; |
42 private TableCellRenderer originalHeaderRenderer; |
42 |
43 |
161 } |
162 } |
162 setBorder(border); |
163 setBorder(border); |
163 return this; |
164 return this; |
164 } |
165 } |
165 |
166 |
166 private int viewIndexForColumn(TableColumn aColumn) { |
|
167 if (aColumn != null) { |
|
168 return header.getTable().convertColumnIndexToView( |
|
169 aColumn.getModelIndex()); |
|
170 } |
|
171 return -1; |
|
172 } |
|
173 |
|
174 public void paint(Graphics g) { |
167 public void paint(Graphics g) { |
175 Dimension size = getSize(); |
168 Dimension size = getSize(); |
176 State state = State.NORMAL; |
169 State state = State.NORMAL; |
177 if (column == viewIndexForColumn(header.getDraggedColumn())) { |
170 TableColumn draggedColumn = header.getDraggedColumn(); |
|
171 if (draggedColumn != null && |
|
172 column == SwingUtilities2.convertColumnIndexToView( |
|
173 header.getColumnModel(), draggedColumn.getModelIndex())) { |
178 state = State.PRESSED; |
174 state = State.PRESSED; |
179 } else if (isSelected || hasFocus || hasRollover) { |
175 } else if (isSelected || hasFocus || hasRollover) { |
180 state = State.HOT; |
176 state = State.HOT; |
181 } |
177 } |
182 /* on Vista there are more states for sorted columns */ |
178 /* on Vista there are more states for sorted columns */ |