1 Clazz.declarePackage ("jssun.swing.table");
2 Clazz.load (["javax.swing.plaf.UIResource", "javax.swing.table.DefaultTableCellRenderer"], "jssun.swing.table.DefaultTableCellHeaderRenderer", ["javax.swing.SortOrder", "jssun.swing.DefaultLookup"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.horizontalTextPositionSet = false;
5 Clazz.instantialize (this, arguments);
6 }, jssun.swing.table, "DefaultTableCellHeaderRenderer", javax.swing.table.DefaultTableCellRenderer, javax.swing.plaf.UIResource);
7 Clazz.makeConstructor (c$,
9 Clazz.superConstructor (this, jssun.swing.table.DefaultTableCellHeaderRenderer, []);
10 this.setHorizontalAlignment (0);
12 Clazz.defineMethod (c$, "setHorizontalTextPosition",
13 function (textPosition) {
14 this.horizontalTextPositionSet = true;
15 Clazz.superCall (this, jssun.swing.table.DefaultTableCellHeaderRenderer, "setHorizontalTextPosition", [textPosition]);
17 Clazz.overrideMethod (c$, "getTableCellRendererComponent",
18 function (table, value, isSelected, hasFocus, row, column) {
20 var isPaintingForPrint = false;
22 var header = table.getTableHeader ();
27 fgColor = jssun.swing.DefaultLookup.getColor (this, this.ui, "TableHeader.focusCellForeground");
28 bgColor = jssun.swing.DefaultLookup.getColor (this, this.ui, "TableHeader.focusCellBackground");
29 }if (fgColor == null) {
30 fgColor = header.getForeground ();
31 }if (bgColor == null) {
32 bgColor = header.getBackground ();
33 }this.setForeground (fgColor);
34 this.setBackground (bgColor);
35 this.setFont (header.getFont ());
36 isPaintingForPrint = header.isPaintingForPrint ();
37 }if (!isPaintingForPrint && table.getRowSorter () != null) {
38 if (!this.horizontalTextPositionSet) {
39 this.setHorizontalTextPosition (10);
40 }var sortOrder = jssun.swing.table.DefaultTableCellHeaderRenderer.getColumnSortOrder (table, column);
41 if (sortOrder != null) {
43 case javax.swing.SortOrder.ASCENDING:
44 sortIcon = jssun.swing.DefaultLookup.getIcon (this, this.ui, "Table.ascendingSortIcon");
46 case javax.swing.SortOrder.DESCENDING:
47 sortIcon = jssun.swing.DefaultLookup.getIcon (this, this.ui, "Table.descendingSortIcon");
49 case javax.swing.SortOrder.UNSORTED:
50 sortIcon = jssun.swing.DefaultLookup.getIcon (this, this.ui, "Table.naturalSortIcon");
53 }}}this.setText (value == null ? "" : value.toString ());
54 this.setIcon (sortIcon);
57 border = jssun.swing.DefaultLookup.getBorder (this, this.ui, "TableHeader.focusCellBorder");
58 }if (border == null) {
59 border = jssun.swing.DefaultLookup.getBorder (this, this.ui, "TableHeader.cellBorder");
60 }this.setBorder (border);
62 }, "javax.swing.JTable,~O,~B,~B,~N,~N");
63 c$.getColumnSortOrder = Clazz.defineMethod (c$, "getColumnSortOrder",
64 function (table, column) {
66 if (table == null || table.getRowSorter () == null) {
68 }var sortKeys = table.getRowSorter ().getSortKeys ();
69 if (sortKeys.size () > 0 && sortKeys.get (0).getColumn () == table.convertColumnIndexToModel (column)) {
70 rv = sortKeys.get (0).getSortOrder ();
72 }, "javax.swing.JTable,~N");
73 Clazz.overrideMethod (c$, "paintComponent",
75 }, "java.awt.Graphics");