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