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