1 Clazz.declarePackage ("javax.swing.table");
2 Clazz.load (["javax.swing.JComponent", "javax.swing.event.TableColumnModelListener"], "javax.swing.table.JTableHeader", ["java.lang.IllegalArgumentException", "java.awt.Component", "$.Rectangle", "java.awt.event.MouseEvent", "javax.swing.SwingUtilities", "$.UIManager", "javax.swing.table.DefaultTableColumnModel", "jssun.swing.table.DefaultTableCellHeaderRenderer"], function () {
3 c$ = Clazz.decorateAsClass (function () {
5 this.columnModel = null;
6 this.reorderingAllowed = false;
7 this.resizingAllowed = false;
8 this.updateTableInRealTime = false;
9 this.resizingColumn = null;
10 this.draggedColumn = null;
11 this.draggedDistance = 0;
12 this.defaultRenderer = null;
13 Clazz.instantialize (this, arguments);
14 }, javax.swing.table, "JTableHeader", javax.swing.JComponent, javax.swing.event.TableColumnModelListener);
15 Clazz.makeConstructor (c$,
17 this.construct (null);
19 Clazz.makeConstructor (c$,
21 Clazz.superConstructor (this, javax.swing.table.JTableHeader);
22 if (cm == null) cm = this.createDefaultColumnModel ();
23 this.setColumnModel (cm);
24 this.initializeLocalVars ();
26 }, "javax.swing.table.TableColumnModel");
27 Clazz.defineMethod (c$, "setTable",
31 this.firePropertyChangeObject ("table", old, table);
32 }, "javax.swing.JTable");
33 Clazz.defineMethod (c$, "getTable",
37 Clazz.defineMethod (c$, "setReorderingAllowed",
38 function (reorderingAllowed) {
39 var old = this.reorderingAllowed;
40 this.reorderingAllowed = reorderingAllowed;
41 this.firePropertyChangeBool ("reorderingAllowed", old, reorderingAllowed);
43 Clazz.defineMethod (c$, "getReorderingAllowed",
45 return this.reorderingAllowed;
47 Clazz.defineMethod (c$, "setResizingAllowed",
48 function (resizingAllowed) {
49 var old = this.resizingAllowed;
50 this.resizingAllowed = resizingAllowed;
51 this.firePropertyChangeBool ("resizingAllowed", old, resizingAllowed);
53 Clazz.defineMethod (c$, "getResizingAllowed",
55 return this.resizingAllowed;
57 Clazz.defineMethod (c$, "getDraggedColumn",
59 return this.draggedColumn;
61 Clazz.defineMethod (c$, "getDraggedDistance",
63 return this.draggedDistance;
65 Clazz.defineMethod (c$, "getResizingColumn",
67 return this.resizingColumn;
69 Clazz.defineMethod (c$, "setUpdateTableInRealTime",
71 this.updateTableInRealTime = flag;
73 Clazz.defineMethod (c$, "getUpdateTableInRealTime",
75 return this.updateTableInRealTime;
77 Clazz.defineMethod (c$, "setDefaultRenderer",
78 function (defaultRenderer) {
79 this.defaultRenderer = defaultRenderer;
80 }, "javax.swing.table.TableCellRenderer");
81 Clazz.defineMethod (c$, "getDefaultRenderer",
83 return this.defaultRenderer;
85 Clazz.defineMethod (c$, "columnAtPoint",
88 if (!this.getComponentOrientation ().isLeftToRight ()) {
89 x = this.getWidthInRightToLeft () - x - 1;
90 }return this.getColumnModel ().getColumnIndexAtX (x);
92 Clazz.defineMethod (c$, "getHeaderRect",
94 var r = new java.awt.Rectangle ();
95 var cm = this.getColumnModel ();
96 r.height = this.getHeight ();
98 if (!this.getComponentOrientation ().isLeftToRight ()) {
99 r.x = this.getWidthInRightToLeft ();
100 }} else if (column >= cm.getColumnCount ()) {
101 if (this.getComponentOrientation ().isLeftToRight ()) {
102 r.x = this.getWidth ();
104 for (var i = 0; i < column; i++) {
105 r.x += cm.getColumn (i).getWidth ();
107 if (!this.getComponentOrientation ().isLeftToRight ()) {
108 r.x = this.getWidthInRightToLeft () - r.x - cm.getColumn (column).getWidth ();
109 }r.width = cm.getColumn (column).getWidth ();
112 Clazz.defineMethod (c$, "getToolTipText",
115 var p = event.getPoint ();
117 if ((column = this.columnAtPoint (p)) != -1) {
118 var aColumn = this.columnModel.getColumn (column);
119 var renderer = aColumn.getHeaderRenderer ();
120 if (renderer == null) {
121 renderer = this.defaultRenderer;
122 }var component = renderer.getTableCellRendererComponent (this.getTable (), aColumn.getHeaderValue (), false, false, -1, column);
123 if (Clazz.instanceOf (component, javax.swing.JComponent)) {
125 var cellRect = this.getHeaderRect (column);
126 p.translate (-cellRect.x, -cellRect.y);
127 newEvent = new java.awt.event.MouseEvent (component, event.getID (), event.getWhen (), event.getModifiers (), p.x, p.y, event.getXOnScreen (), event.getYOnScreen (), event.getClickCount (), event.isPopupTrigger (), 0);
128 tip = (component).getToolTipText (newEvent);
129 }}if (tip == null) tip = this.getToolTipText ();
131 }, "java.awt.event.MouseEvent");
132 Clazz.overrideMethod (c$, "getUI",
136 Clazz.defineMethod (c$, "setUI",
138 if (this.ui !== ui) {
139 Clazz.superCall (this, javax.swing.table.JTableHeader, "setUI", [ui]);
141 }}, "javax.swing.plaf.TableHeaderUI");
142 Clazz.overrideMethod (c$, "updateUI",
144 this.setUI (javax.swing.UIManager.getUI (this));
145 var renderer = this.getDefaultRenderer ();
146 if (Clazz.instanceOf (renderer, java.awt.Component)) {
147 javax.swing.SwingUtilities.updateComponentTreeUI (renderer);
149 Clazz.overrideMethod (c$, "getUIClassID",
151 return "TableHeaderUI";
153 Clazz.defineMethod (c$, "setColumnModel",
154 function (columnModel) {
155 if (columnModel == null) {
156 throw new IllegalArgumentException ("Cannot set a null ColumnModel");
157 }var old = this.columnModel;
158 if (columnModel !== old) {
160 old.removeColumnModelListener (this);
161 }this.columnModel = columnModel;
162 columnModel.addColumnModelListener (this);
163 this.firePropertyChangeObject ("columnModel", old, columnModel);
164 this.resizeAndRepaint ();
165 }}, "javax.swing.table.TableColumnModel");
166 Clazz.defineMethod (c$, "getColumnModel",
168 return this.columnModel;
170 Clazz.overrideMethod (c$, "columnAdded",
172 this.resizeAndRepaint ();
173 }, "javax.swing.event.TableColumnModelEvent");
174 Clazz.overrideMethod (c$, "columnRemoved",
176 this.resizeAndRepaint ();
177 }, "javax.swing.event.TableColumnModelEvent");
178 Clazz.overrideMethod (c$, "columnMoved",
181 }, "javax.swing.event.TableColumnModelEvent");
182 Clazz.overrideMethod (c$, "columnMarginChanged",
184 this.resizeAndRepaint ();
185 }, "javax.swing.event.ChangeEvent");
186 Clazz.overrideMethod (c$, "columnSelectionChanged",
188 }, "javax.swing.event.ListSelectionEvent");
189 Clazz.defineMethod (c$, "createDefaultColumnModel",
191 return new javax.swing.table.DefaultTableColumnModel ();
193 Clazz.defineMethod (c$, "createDefaultRenderer",
195 return new jssun.swing.table.DefaultTableCellHeaderRenderer ();
197 Clazz.defineMethod (c$, "initializeLocalVars",
199 this.setOpaque (true);
201 this.reorderingAllowed = true;
202 this.resizingAllowed = true;
203 this.draggedColumn = null;
204 this.draggedDistance = 0;
205 this.resizingColumn = null;
206 this.updateTableInRealTime = true;
207 this.setDefaultRenderer (this.createDefaultRenderer ());
209 Clazz.defineMethod (c$, "resizeAndRepaint",
214 Clazz.defineMethod (c$, "setDraggedColumn",
216 this.draggedColumn = aColumn;
217 }, "javax.swing.table.TableColumn");
218 Clazz.defineMethod (c$, "setDraggedDistance",
219 function (distance) {
220 this.draggedDistance = distance;
222 Clazz.defineMethod (c$, "setResizingColumn",
224 this.resizingColumn = aColumn;
225 }, "javax.swing.table.TableColumn");
226 Clazz.defineMethod (c$, "getWidthInRightToLeft",
228 if ((this.table != null) && (this.table.getAutoResizeMode () != 0)) {
229 return this.table.getWidth ();
230 }return Clazz.superCall (this, javax.swing.table.JTableHeader, "getWidth", []);
232 Clazz.defineMethod (c$, "paramString",
234 var reorderingAllowedString = (this.reorderingAllowed ? "true" : "false");
235 var resizingAllowedString = (this.resizingAllowed ? "true" : "false");
236 var updateTableInRealTimeString = (this.updateTableInRealTime ? "true" : "false");
237 return Clazz.superCall (this, javax.swing.table.JTableHeader, "paramString", []) + ",draggedDistance=" + this.draggedDistance + ",reorderingAllowed=" + reorderingAllowedString + ",resizingAllowed=" + resizingAllowedString + ",updateTableInRealTime=" + updateTableInRealTimeString;
239 Clazz.defineStatics (c$,
240 "$uiClassID", "TableHeaderUI");