r24958: This is the final text, and the final version. I'll send the release
[jelmer/samba4-debian.git] / webapps / qooxdoo-0.6.5-sdk / frontend / framework / source / class / qx / ui / table / DefaultHeaderCellRenderer.js
1 /* ************************************************************************
2
3    qooxdoo - the new era of web development
4
5    http://qooxdoo.org
6
7    Copyright:
8      2006 STZ-IDA, Germany, http://www.stz-ida.de
9
10    License:
11      LGPL: http://www.gnu.org/licenses/lgpl.html
12      EPL: http://www.eclipse.org/org/documents/epl-v10.php
13      See the LICENSE file in the project's top-level directory for details.
14
15    Authors:
16      * Til Schneider (til132)
17
18 ************************************************************************ */
19
20 /* ************************************************************************
21
22 #module(ui_table)
23 #embed(qx.widgettheme/table/ascending.png)
24 #embed(qx.widgettheme/table/descending.png)
25
26 ************************************************************************ */
27
28 /**
29  * The default header cell renderer.
30  */
31 qx.OO.defineClass("qx.ui.table.DefaultHeaderCellRenderer", qx.ui.table.HeaderCellRenderer,
32 function() {
33   qx.ui.table.HeaderCellRenderer.call(this);
34 });
35
36
37 // overridden
38 qx.Proto.createHeaderCell = function(cellInfo) {
39   var widget = new qx.ui.basic.Atom();
40   widget.setAppearance("table-header-cell");
41
42   this.updateHeaderCell(cellInfo, widget);
43
44   return widget;
45 }
46
47
48 // overridden
49 qx.Proto.updateHeaderCell = function(cellInfo, cellWidget) {
50   var DefaultHeaderCellRenderer = qx.ui.table.DefaultHeaderCellRenderer;
51
52   cellWidget.setLabel(cellInfo.name);
53
54   cellWidget.setIcon(cellInfo.sorted ? (cellInfo.sortedAscending ? "widget/table/ascending.png" : "widget/table/descending.png") : null);
55   cellWidget.setState(DefaultHeaderCellRenderer.STATE_SORTED, cellInfo.sorted);
56   cellWidget.setState(DefaultHeaderCellRenderer.STATE_SORTED_ASCENDING, cellInfo.sortedAscending);
57 }
58
59 /**
60  * (string) The state which will be set for header cells of sorted columns.
61  */
62 qx.Class.STATE_SORTED = "sorted";
63
64 /**
65  * (string) The state which will be set when sorting is ascending.
66  */
67 qx.Class.STATE_SORTED_ASCENDING = "sortedAscending";