e6b9cee3efe2a3dcf5ea4dc4c160929014132bb4
[jalviewjs.git] / site / swingjs / j2s / jssun / swing / table / DefaultTableCellHeaderRenderer.js
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$, 
8 function () {
9 Clazz.superConstructor (this, jssun.swing.table.DefaultTableCellHeaderRenderer, []);
10 this.setHorizontalAlignment (0);
11 });
12 Clazz.defineMethod (c$, "setHorizontalTextPosition", 
13 function (textPosition) {
14 this.horizontalTextPositionSet = true;
15 Clazz.superCall (this, jssun.swing.table.DefaultTableCellHeaderRenderer, "setHorizontalTextPosition", [textPosition]);
16 }, "~N");
17 Clazz.overrideMethod (c$, "getTableCellRendererComponent", 
18 function (table, value, isSelected, hasFocus, row, column) {
19 var sortIcon = null;
20 var isPaintingForPrint = false;
21 if (table != null) {
22 var header = table.getTableHeader ();
23 if (header != null) {
24 var fgColor = null;
25 var bgColor = null;
26 if (hasFocus) {
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) {
42 switch (sortOrder) {
43 case javax.swing.SortOrder.ASCENDING:
44 sortIcon = jssun.swing.DefaultLookup.getIcon (this, this.ui, "Table.ascendingSortIcon");
45 break;
46 case javax.swing.SortOrder.DESCENDING:
47 sortIcon = jssun.swing.DefaultLookup.getIcon (this, this.ui, "Table.descendingSortIcon");
48 break;
49 case javax.swing.SortOrder.UNSORTED:
50 sortIcon = jssun.swing.DefaultLookup.getIcon (this, this.ui, "Table.naturalSortIcon");
51 break;
52 }
53 }}}this.setText (value == null ? "" : value.toString ());
54 this.setIcon (sortIcon);
55 var border = null;
56 if (hasFocus) {
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);
61 return this;
62 }, "javax.swing.JTable,~O,~B,~B,~N,~N");
63 c$.getColumnSortOrder = Clazz.defineMethod (c$, "getColumnSortOrder", 
64 function (table, column) {
65 var rv = null;
66 if (table == null || table.getRowSorter () == null) {
67 return rv;
68 }var sortKeys = table.getRowSorter ().getSortKeys ();
69 if (sortKeys.size () > 0 && sortKeys.get (0).getColumn () == table.convertColumnIndexToModel (column)) {
70 rv = sortKeys.get (0).getSortOrder ();
71 }return rv;
72 }, "javax.swing.JTable,~N");
73 Clazz.overrideMethod (c$, "paintComponent", 
74 function (g) {
75 }, "java.awt.Graphics");
76 });