summaryrefslogtreecommitdiff
path: root/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview
diff options
context:
space:
mode:
Diffstat (limited to 'webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview')
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellHtml.js39
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellIconHtml.js41
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellImage.js60
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellLink.js42
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellText.js42
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/Header.js296
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderCell.js259
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderSeparator.js32
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListView.js375
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListViewPane.js563
10 files changed, 0 insertions, 1749 deletions
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellHtml.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellHtml.js
deleted file mode 100644
index 53286a66ef..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellHtml.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ContentCellHtml", qx.ui.embed.HtmlEmbed,
-function(vHtml)
-{
- qx.ui.embed.HtmlEmbed.call(this, vHtml);
-
- this.setSelectable(false);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-content-cell-html" });
-
-qx.ui.listview.ContentCellHtml.empty = {
- html : ""
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellIconHtml.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellIconHtml.js
deleted file mode 100644
index 7cf839cb0c..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellIconHtml.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ContentCellIconHtml", qx.ui.embed.IconHtmlEmbed,
-function(vHtml, vIcon, vIconWidth, vIconHeight)
-{
- qx.ui.embed.IconHtmlEmbed.call(this, vHtml, vIcon, vIconWidth, vIconHeight);
-
- this.setSelectable(false);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-content-cell-icon-html" });
-
-qx.ui.listview.ContentCellIconHtml.empty =
-{
- icon : "",
- html : ""
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellImage.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellImage.js
deleted file mode 100644
index de9672ca22..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellImage.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-#embed(qx.static/image/blank.gif)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ContentCellImage", qx.ui.basic.Image,
-function(vSource, vWidth, vHeight) {
- qx.ui.basic.Image.call(this, vSource, vWidth, vHeight);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-content-cell-image" });
-
-qx.ui.listview.ContentCellImage.empty = {
- source : "static/image/blank.gif"
-}
-
-
-
-/*
----------------------------------------------------------------------------
- CUSTOM SETTER
----------------------------------------------------------------------------
-*/
-
-qx.Proto.setSource = function(vSource)
-{
- if (this._initialLayoutDone)
- {
- return this._updateContent(qx.manager.object.AliasManager.getInstance().resolvePath(vSource == "" ? "static/image/blank.gif" : vSource));
- }
- else
- {
- return qx.ui.basic.Image.prototype.setSource.call(this, vSource);
- }
-}
-
-// Omit dimension setup in list-view
-qx.Proto._postApplyDimensions = qx.lang.Function.returnTrue;
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellLink.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellLink.js
deleted file mode 100644
index 3931cb3a7f..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellLink.js
+++ /dev/null
@@ -1,42 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ContentCellLink", qx.ui.embed.LinkEmbed,
-function(vHtml)
-{
- qx.ui.embed.LinkEmbed.call(this, vHtml);
-
- // selectable = false will break links in gecko based browsers
- this.setSelectable(true);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-content-cell-link" });
-
-qx.ui.listview.ContentCellLink.empty =
-{
- html : "",
- uri : "#"
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellText.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellText.js
deleted file mode 100644
index d77abf72a3..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ContentCellText.js
+++ /dev/null
@@ -1,42 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ContentCellText", qx.ui.embed.TextEmbed,
-function(vText)
-{
- qx.ui.embed.TextEmbed.call(this, vText);
-
- this.setStyleProperty("whiteSpace", "nowrap");
- this.setStyleProperty("textOverflow", "ellipsis");
-
- this.setSelectable(false);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-content-cell-text" });
-
-qx.ui.listview.ContentCellText.empty = {
- text : ""
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/Header.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/Header.js
deleted file mode 100644
index 73824e5448..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/Header.js
+++ /dev/null
@@ -1,296 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.Header", qx.ui.layout.HorizontalBoxLayout,
-function(vColumns)
-{
- qx.ui.layout.HorizontalBoxLayout.call(this);
-
- // This fixes the innerWidth calculation difference between the grid(pane) and the head.
- this.setPaddingRight(qx.ui.core.Widget.SCROLLBAR_SIZE);
-
-
- // ************************************************************************
- // STORE REFERENCE TO CONFIG ENTRY
- // ************************************************************************
- this._columns = vColumns;
-
-
- // ************************************************************************
- // CREATE HEADER CELLS
- // ************************************************************************
- var vHeadCell, vHeadSeparator;
-
- for (var vCol in vColumns)
- {
- vHeadCell = new qx.ui.listview.HeaderCell(vColumns[vCol], vCol);
- vHeadSeparator = new qx.ui.listview.HeaderSeparator;
-
- this.add(vHeadCell, vHeadSeparator);
-
- if (vColumns[vCol].align) {
- vHeadCell.setHorizontalChildrenAlign(vColumns[vCol].align);
-
- if (vColumns[vCol].align == "right") {
- vHeadCell.setReverseChildrenOrder(true);
- }
- }
-
- // store some additional data
- vColumns[vCol].contentClass = qx.OO.classes["qx.ui.listview.ContentCell" + qx.lang.String.toFirstUp(vColumns[vCol].type || "text")];
- vColumns[vCol].headerCell = vHeadCell;
- }
-
-
- // ************************************************************************
- // ADD EVENT LISTENERS
- // ************************************************************************
- this.addEventListener("mousemove", this._onmousemove);
- this.addEventListener("mousedown", this._onmousedown);
- this.addEventListener("mouseup", this._onmouseup);
- this.addEventListener("mouseout", this._onmouseout);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-header" });
-
-
-
-/*
----------------------------------------------------------------------------
- RESIZE SYNC
----------------------------------------------------------------------------
-*/
-
-qx.Proto._syncColumnWidth = function(vWidth)
-{
- var vChildren = this.getChildren();
- var vColumn = Math.ceil(vChildren.indexOf(this._resizeCell) / 2);
-
- this.getParent().getPane().setColumnWidth(vColumn, vWidth);
-}
-
-qx.Proto._syncResizeLine = function()
-{
- qx.ui.core.Widget.flushGlobalQueues();
-
- var vParent = this.getParent();
- var vLine = vParent.getResizeLine();
- var vLeft = qx.html.Location.getPageBoxLeft(this._resizeSeparator.getElement()) - qx.html.Location.getPageInnerLeft(this.getElement());
- var vTop = qx.html.Dimension.getBoxHeight(vParent.getHeader().getElement());
- var vHeight = qx.html.Dimension.getBoxHeight(vParent.getElement()) - vTop;
-
- vLine._applyRuntimeTop(vTop);
- vLine._applyRuntimeHeight(vHeight);
- vLine._applyRuntimeLeft(vLeft);
-
- vLine.removeStyleProperty("visibility");
-}
-
-
-
-
-/*
----------------------------------------------------------------------------
- EVENT HANDLER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._mshtml = qx.core.Client.getInstance().isMshtml();
-
-qx.Proto._onmousemove = function(e)
-{
- if (!this.getParent().getResizable()) {
- return;
- }
-
- if (this._resizingActive)
- {
- // Slow down mshtml a bit
- if (this._mshtml)
- {
- if ((new Date).valueOf() - this._last < 50) {
- return;
- }
-
- this._last = (new Date).valueOf();
- }
-
- var vNewLeft = e.getPageX();
- var vSizeDiff = vNewLeft - this._resizeStart;
- var vCell = this._resizeCell;
-
- vCell.setWidth(Math.max(4, vCell.getWidth() + vSizeDiff));
- this._resizeStart = vNewLeft;
-
- if (this.getParent().getLiveResize())
- {
- this._syncColumnWidth(vCell._computeBoxWidth());
- }
- else
- {
- this._syncResizeLine();
- }
- }
- else
- {
- var vTarget = e.getTarget();
- var vEventPos = e.getPageX();
- var vTargetPosLeft = qx.html.Location.getPageBoxLeft(vTarget.getElement());
- var vTargetPosRight = vTargetPosLeft + qx.html.Dimension.getBoxWidth(vTarget.getElement());
-
- var vResizeCursor = false;
- var vResizeSeparator = null;
-
- if (vTarget instanceof qx.ui.listview.HeaderSeparator)
- {
- vResizeCursor = true;
- vResizeSeparator = vTarget;
- }
- else if ((vEventPos - vTargetPosLeft) <= 10)
- {
- // Ignore first column
- if (!vTarget.isFirstChild())
- {
- vResizeCursor = true;
- vResizeSeparator = vTarget.getPreviousSibling();
- }
- }
- else if ((vTargetPosRight - vEventPos) <= 10)
- {
- vResizeCursor = true;
- vResizeSeparator = vTarget.getNextSibling();
- }
-
- if (!(vResizeSeparator instanceof qx.ui.listview.HeaderSeparator))
- {
- vResizeSeparator = vTarget = vResizeCursor = null;
- }
-
- // Check if child is marked as resizable
- else if (vResizeSeparator)
- {
- var vResizeCell = vResizeSeparator.getPreviousSibling();
-
- if (vResizeCell && (vResizeCell._computedWidthTypePercent || vResizeCell._config.resizable == false)) {
- vResizeSeparator = vTarget = vResizeCursor = null;
- }
- }
-
- // Apply global cursor
- this.getTopLevelWidget().setGlobalCursor(vResizeCursor ? "e-resize" : null);
-
- // Store data for mousedown
- this._resizeSeparator = vResizeSeparator;
- this._resizeTarget = vTarget;
- }
-}
-
-qx.Proto._onmousedown = function(e)
-{
- if (!this._resizeSeparator) {
- return;
- }
-
- this._resizingActive = true;
- this._resizeStart = e.getPageX();
- this._resizeCell = this._resizeSeparator.getPreviousSibling();
-
- if (!this.getParent().getLiveResize()) {
- this._syncResizeLine();
- }
-
- this.setCapture(true);
-}
-
-qx.Proto._onmouseup = function(e)
-{
- if (!this._resizingActive) {
- return;
- }
-
- this._syncColumnWidth(this._resizeCell.getBoxWidth());
-
- this.setCapture(false);
- this.getTopLevelWidget().setGlobalCursor(null);
-
- // Remove hover effect
- this._resizeTarget.removeState("over");
-
- // Hide resize line
- this.getParent().getResizeLine().setStyleProperty("visibility", "hidden");
-
- this._cleanupResizing();
-}
-
-qx.Proto._onmouseout = function(e)
-{
- if (!this.getCapture()) {
- this.getTopLevelWidget().setGlobalCursor(null);
- }
-}
-
-qx.Proto._cleanupResizing = function()
-{
- delete this._resizingActive;
-
- delete this._resizeSeparator;
- delete this._resizeTarget;
- delete this._resizeStart;
- delete this._resizeCell;
-}
-
-
-
-
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DISPOSER
----------------------------------------------------------------------------
-*/
-
-qx.Proto.dispose = function()
-{
- if (this.getDisposed()) {
- return;
- }
-
- this._cleanupResizing();
-
- this.removeEventListener("mousemove", this._onmousemove);
- this.removeEventListener("mousedown", this._onmousedown);
- this.removeEventListener("mouseup", this._onmouseup);
- this.removeEventListener("mouseout", this._onmouseout);
-
- this._columns = null;
-
- return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this);
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderCell.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderCell.js
deleted file mode 100644
index 3d0e21cb42..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderCell.js
+++ /dev/null
@@ -1,259 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-#embed(qx.widgettheme/arrows/up.gif)
-#embed(qx.widgettheme/arrows/down.gif)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.HeaderCell", qx.ui.basic.Atom,
-function(vConfig, vId)
-{
- qx.ui.basic.Atom.call(this, vConfig.label, vConfig.icon, vConfig.iconWidth, vConfig.iconHeight, vConfig.flash);
-
- // Text Overflow
- this.setStyleProperty("textOverflow", "ellipsis");
-
-
- // ************************************************************************
- // STORE REFERENCE TO CONFIG ENTRY
- // ************************************************************************
- this._config = vConfig;
- this._id = vId;
-
-
- // ************************************************************************
- // ARGUMENTS
- // ************************************************************************
- this.setWidth(typeof vConfig.width === "undefined" ? "auto" : vConfig.width);
-
- if (vConfig.minWidth != null) {
- this.setMinWidth(vConfig.minWidth);
- }
-
- if (vConfig.maxWidth != null) {
- this.setMaxWidth(vConfig.maxWidth);
- }
-
-
- // ************************************************************************
- // ADDITIONAL CHILDREN
- // ************************************************************************
-
- // Re-Enable flex support
- this.getLayoutImpl().setEnableFlexSupport(true);
-
- this._spacer = new qx.ui.basic.HorizontalSpacer;
-
- this._arrowup = new qx.ui.basic.Image("widget/arrows/up.gif");
- this._arrowup.setVerticalAlign("middle");
- this._arrowup.setDisplay(false);
-
- this._arrowdown = new qx.ui.basic.Image("widget/arrows/down.gif");
- this._arrowdown.setVerticalAlign("middle");
- this._arrowdown.setDisplay(false);
-
- this.add(this._spacer, this._arrowup, this._arrowdown);
-
-
- // ************************************************************************
- // EVENTS
- // ************************************************************************
-
- this.addEventListener("mouseup", this._onmouseup);
- this.addEventListener("mouseover", this._onmouseover);
- this.addEventListener("mouseout", this._onmouseout);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-header-cell" });
-qx.OO.addProperty({ name : "sortOrder", type : "string", allowNull : true, possibleValues : [ "ascending", "descending" ] });
-
-qx.Class.C_SORT_ASCENDING = "ascending";
-qx.Class.C_SORT_DESCENDING = "descending";
-
-
-
-/*
----------------------------------------------------------------------------
- UTILITIES
----------------------------------------------------------------------------
-*/
-
-qx.Proto.getView = function() {
- return this.getParent().getParent();
-}
-
-qx.Proto.getNextSortOrder = function()
-{
- var vCurrentSortOrder = this.getSortOrder();
-
- switch(vCurrentSortOrder)
- {
- case qx.ui.listview.HeaderCell.C_SORT_ASCENDING:
- return qx.ui.listview.HeaderCell.C_SORT_DESCENDING;
-
- default:
- return qx.ui.listview.HeaderCell.C_SORT_ASCENDING;
- }
-}
-
-qx.Proto.updateSort = function()
-{
-
- var vListView = this.getView();
- var vData = vListView.getData();
- var vFieldId = this._id;
- var vSortProp = this._config.sortProp || "text";
- var vSortMethod = this._config.sortMethod || qx.util.Compare.byString;
-
- vData.sort(function(a, b) {
- return vSortMethod(a[vFieldId][vSortProp], b[vFieldId][vSortProp]);
- });
-
- if (this.getSortOrder() == qx.ui.listview.HeaderCell.C_SORT_DESCENDING) {
- vData.reverse();
- }
-}
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- MODIFIER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._modifySortOrder = function(propValue, propOldValue, propData)
-{
- var vListView = this.getView();
-
- switch(propValue)
- {
- case qx.ui.listview.HeaderCell.C_SORT_ASCENDING:
- this._arrowup.setDisplay(true);
- this._arrowdown.setDisplay(false);
-
- vListView.setSortBy(this._id);
- break;
-
- case qx.ui.listview.HeaderCell.C_SORT_DESCENDING:
- this._arrowup.setDisplay(false);
- this._arrowdown.setDisplay(true);
-
- vListView.setSortBy(this._id);
- break;
-
- default:
- this._arrowup.setDisplay(false);
- this._arrowdown.setDisplay(false);
-
- if (vListView.getSortBy() == this._id) {
- vListView.setSortBy(null);
- }
- }
-
- if (propValue)
- {
- this.updateSort();
- vListView.update();
- }
-
- return true;
-}
-
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- EVENT HANDLER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._onmouseover = function(e) {
- this.addState("over");
-}
-
-qx.Proto._onmouseout = function(e) {
- this.removeState("over");
-}
-
-qx.Proto._onmouseup = function(e)
-{
- if (!this._config.sortable || this.getParent()._resizeSeparator) {
- return;
- }
-
- this.setSortOrder(this.getNextSortOrder());
- e.stopPropagation();
-}
-
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DISPOSER
----------------------------------------------------------------------------
-*/
-
-qx.Proto.dispose = function()
-{
- if (this.getDisposed()) {
- return;
- }
-
- delete this._config;
-
- if (this._spacer)
- {
- this._spacer.dispose();
- this._spacer = null;
- }
-
- if (this._arrowup)
- {
- this._arrowup.dispose();
- this._arrowup = null;
- }
-
- if (this._arrowdown)
- {
- this._arrowdown.dispose();
- this._arrowdown = null;
- }
-
- this.removeEventListener("mouseup", this._onmouseup);
- this.removeEventListener("mouseover", this._onmouseover);
- this.removeEventListener("mouseout", this._onmouseout);
-
- return qx.ui.basic.Atom.prototype.dispose.call(this);
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderSeparator.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderSeparator.js
deleted file mode 100644
index b2124fda0f..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/HeaderSeparator.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.HeaderSeparator", qx.ui.basic.Terminator,
-function() {
- qx.ui.basic.Terminator.call(this);
-});
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view-header-separator" });
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListView.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListView.js
deleted file mode 100644
index a4226b88e7..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListView.js
+++ /dev/null
@@ -1,375 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ListView", qx.ui.layout.VerticalBoxLayout,
-function(vData, vColumns)
-{
- // ************************************************************************
- // REFERENCES
- // ************************************************************************
-
- this._data = vData;
- this._columns = vColumns;
-
-
-
- // ************************************************************************
- // OBJECTS
- // ************************************************************************
-
- this._header = new qx.ui.listview.Header(vColumns);
- this._frame = new qx.ui.layout.HorizontalBoxLayout;
- this._pane = new qx.ui.listview.ListViewPane(vData, vColumns);
- this._scroll = new qx.ui.layout.CanvasLayout;
- this._scrollContent = new qx.ui.basic.Terminator;
- this._resizeLine = new qx.ui.basic.Terminator;
-
-
-
- // ************************************************************************
- // SUPERCLASS CONSTRUCTOR
- // ************************************************************************
-
- qx.ui.layout.VerticalBoxLayout.call(this);
-
-
-
- // ************************************************************************
- // HEADER
- // ************************************************************************
-
- this._header.setParent(this);
-
-
-
- // ************************************************************************
- // FRAME
- // ************************************************************************
-
- this._frame.setParent(this);
- this._frame.setHeight("1*");
- this._frame.setWidth(null);
-
-
-
- // ************************************************************************
- // PANE
- // ************************************************************************
-
- this._pane.setParent(this._frame);
-
-
-
- // ************************************************************************
- // SCROLL AREA
- // ************************************************************************
-
- this._scroll.setWidth("auto");
- this._scroll.setOverflow("scrollY");
- this._scroll.setParent(this._frame);
- this._scroll.enableInlineEvent("scroll");
- this._scroll.addEventListener("scroll", this._onscroll, this);
-
-
-
- // ************************************************************************
- // SCROLL CONTENT
- // ************************************************************************
-
- this._scrollContent.setWidth(1);
- this._scrollContent.setParent(this._scroll);
-
-
-
-
- // ************************************************************************
- // RESIZE LINE
- // ************************************************************************
-
- this._resizeLine.setBackgroundColor("#D6D5D9");
- this._resizeLine.setWidth(1);
- this._resizeLine.setParent(this);
-
-
-
- // ************************************************************************
- // EVENTS
- // ************************************************************************
-
- this.addEventListener("mousedown", this._onmousedown);
-});
-
-
-
-
-/*
----------------------------------------------------------------------------
- PROPERTIES
----------------------------------------------------------------------------
-*/
-
-qx.OO.changeProperty({ name : "appearance", type : "string", defaultValue : "list-view" });
-
-qx.OO.addProperty({ name : "resizable", type : "boolean", defaultValue : true });
-qx.OO.addProperty({ name : "liveResize", type : "boolean", defaultValue : false });
-qx.OO.addProperty({ name : "sortBy", type : "string" });
-
-
-
-
-/*
----------------------------------------------------------------------------
- UTILITIES
----------------------------------------------------------------------------
-*/
-
-qx.Proto.getData = function() {
- return this._data;
-}
-
-qx.Proto.getColumns = function() {
- return this._columns;
-}
-
-qx.Proto.getHeader = function() {
- return this._header;
-}
-
-qx.Proto.getFrame = function() {
- return this._frame;
-}
-
-qx.Proto.getPane = function() {
- return this._pane;
-}
-
-qx.Proto.getScroll = function() {
- return this._scroll;
-}
-
-qx.Proto.getScrollContent = function() {
- return this._scrollContent;
-}
-
-qx.Proto.getResizeLine = function() {
- return this._resizeLine;
-}
-
-qx.Proto.update = function()
-{
- this.updateScrollBar();
- this.updateContent();
-
- // ignore updateLayout here, as it is mostly initially used
-}
-
-qx.Proto.updateScrollBar = function() {
- this._scrollContent.setHeight((this._data.length * this._pane._rowHeight) + this._pane._rowHeight);
-}
-
-/*!
- Bugfix for gecko 1.8 (the one released with firefox 1.5)
- Overflow updates if content gets smaller are problematic
- https://bugzilla.mozilla.org/show_bug.cgi?id=320106
-*/
-if (qx.core.Client.getInstance().isGecko() && qx.core.Client.getInstance().getVersion() >= 1.8)
-{
- qx.Proto._updateScrollBar = qx.Proto.updateScrollBar;
-
- qx.Proto.updateScrollBar = function()
- {
- this._updateScrollBar();
-
- this._scroll.setStyleProperty("height", "0px");
- this._scroll.forceHeight(0);
- this._scroll.setHeight(null);
- }
-}
-
-qx.Proto.updateContent = function() {
- this.getPane()._updateRendering(true);
-}
-
-qx.Proto.updateLayout = function() {
- this.getPane()._updateLayout();
-}
-
-qx.Proto.updateSort = function()
-{
- var vSortBy = this.getSortBy();
-
- if (!vSortBy) {
- return;
- }
-
- var vCell = this._getHeaderCell(vSortBy);
-
- if (vCell) {
- vCell.updateSort();
- }
-}
-
-qx.Proto._getHeaderCell = function(vCellId)
-{
- var vNewEntry = this._columns[vCellId];
- return vNewEntry ? vNewEntry.headerCell : null;
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- MODIFIERS
----------------------------------------------------------------------------
-*/
-
-qx.Proto._modifySortBy = function(propValue, propOldValue, propData)
-{
- if (propOldValue)
- {
- var vOldCell = this._getHeaderCell(propOldValue);
-
- if (vOldCell) {
- vOldCell.setSortOrder(null);
- }
- }
-
- if (propValue)
- {
- var vNewCell = this._getHeaderCell(propValue);
-
- if (vNewCell && vNewCell.getSortOrder() == null) {
- vNewCell.setSortOrder(qx.ui.listview.HeaderCell.C_SORT_ASCENDING);
- }
- }
-
- return true;
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- EVENT HANDLER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._onscroll = function(e) {
- this._pane._onscroll(e);
-}
-
-qx.Proto._onmousedown = function(e) {
- this.getFocusRoot().setActiveChild(this.getPane());
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DISPLAYBLE HANDLING
----------------------------------------------------------------------------
-*/
-
-qx.Proto._handleDisplayableCustom = function(vDisplayable, vParent, vHint)
-{
- qx.ui.layout.VerticalBoxLayout.prototype._handleDisplayableCustom.call(this, vDisplayable, vParent, vHint);
-
- if (vDisplayable)
- {
- this.updateLayout();
- this.updateScrollBar();
- this.updateContent();
- }
-}
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DISPOSER
----------------------------------------------------------------------------
-*/
-
-qx.Proto.dispose = function()
-{
- if (this.getDisposed()) {
- return;
- }
-
- if (this._header)
- {
- this._header.dispose();
- this._header = null;
- }
-
- if (this._frame)
- {
- this._frame.dispose();
- this._frame = null;
- }
-
- if (this._pane)
- {
- this._pane.dispose();
- this._pane = null;
- }
-
- if (this._scroll)
- {
- this._scroll.dispose();
- this._scroll = null;
- }
-
- if (this._scrollContent)
- {
- this._scrollContent.dispose();
- this._scrollContent = null;
- }
-
- if (this._resizeLine)
- {
- this._resizeLine.dispose();
- this._resizeLine = null;
- }
-
- delete this._columns;
- delete this._data;
-
- this.removeEventListener("mousedown", this._onmousedown);
-
- return qx.ui.layout.VerticalBoxLayout.prototype.dispose.call(this);
-}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListViewPane.js b/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListViewPane.js
deleted file mode 100644
index afd5077c3e..0000000000
--- a/webapps/qooxdoo-0.6.5-sdk/frontend/framework/source/class/qx/ui/listview/ListViewPane.js
+++ /dev/null
@@ -1,563 +0,0 @@
-/* ************************************************************************
-
- qooxdoo - the new era of web development
-
- http://qooxdoo.org
-
- Copyright:
- 2004-2007 1&1 Internet AG, Germany, http://www.1and1.org
-
- License:
- LGPL: http://www.gnu.org/licenses/lgpl.html
- EPL: http://www.eclipse.org/org/documents/epl-v10.php
- See the LICENSE file in the project's top-level directory for details.
-
- Authors:
- * Sebastian Werner (wpbasti)
- * Andreas Ecker (ecker)
-
-************************************************************************ */
-
-/* ************************************************************************
-
-#module(ui_listview)
-#load(qx.ui.listview.ContentCellHtml)
-#load(qx.ui.listview.ContentCellIconHtml)
-#load(qx.ui.listview.ContentCellImage)
-#load(qx.ui.listview.ContentCellLink)
-#load(qx.ui.listview.ContentCellText)
-
-************************************************************************ */
-
-qx.OO.defineClass("qx.ui.listview.ListViewPane", qx.ui.layout.GridLayout,
-function(vData, vColumns)
-{
- qx.ui.layout.GridLayout.call(this);
-
- // ************************************************************************
- // DATA
- // ************************************************************************
- // Add aliases for data tables
- this._data = vData;
- this._columns = vColumns;
-
-
- // ************************************************************************
- // INITIALIZE MANAGER
- // ************************************************************************
- this._manager = new qx.manager.selection.VirtualSelectionManager(this);
-
-
- // ************************************************************************
- // MOUSE EVENT LISTENER
- // ************************************************************************
- // Add handling for mouse wheel events
- // Needed because the virtual scroll area does not fire browser
- // understandable events above this pane.
- this.addEventListener("mousewheel", this._onmousewheel);
-
- this.addEventListener("mouseover", this._onmouseover);
- this.addEventListener("mousedown", this._onmousedown);
- this.addEventListener("mouseup", this._onmouseup);
- this.addEventListener("click", this._onclick);
- this.addEventListener("dblclick", this._ondblclick);
-
-
- // ************************************************************************
- // KEY EVENT LISTENER
- // ************************************************************************
- this.addEventListener("keypress", this._onkeypress);
-});
-
-qx.OO.changeProperty({ name : "appearance",
- type : "string",
- defaultValue : "list-view-pane"
- });
-
-qx.Proto._rowHeight = 16;
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- UTILITIES
----------------------------------------------------------------------------
-*/
-
-qx.Proto.getView = function() {
- return this.getParent().getParent();
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- UPDATER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._lastRowCount = 0;
-
-qx.Proto._updateLayout = function(vUpdate)
-{
- // this.debug("InnerHeight: " + this._computeInnerHeight());
- // this.debug("BoxHeight: " + this._computeBoxHeight());
- // return
-
- var vColumns = this._columns;
- var vRowCount = Math.ceil(this.getInnerHeight() / this._rowHeight);
- var vData = this._data;
- var vCell;
-
- // this.debug("Row-Count: " + this._lastRowCount + " => " + vRowCount);
-
- // Sync cells: Add new ones and configure them
- if (vRowCount > this._lastRowCount)
- {
- for (var i=this._lastRowCount, j=0; i<vRowCount; i++, j=0)
- {
- for (var vCol in vColumns)
- {
- vCell = new vColumns[vCol].contentClass;
-
- this.add(vCell, j++, i);
-
- if (vColumns[vCol].align) {
- vCell.setStyleProperty("textAlign",
- vColumns[vCol].align);
- }
- }
- }
- }
-
- // Sync cells: Remove existing ones and dispose them
- else if (this._lastRowCount > vRowCount)
- {
- var vChildren = this.getChildren();
- var vChildrenLength = vChildren.length - 1;
-
- for (var i=this._lastRowCount; i>vRowCount; i--)
- {
- for (var vCol in vColumns)
- {
- vCell = vChildren[vChildrenLength--];
- this.remove(vCell);
- vCell.dispose();
- }
- }
- }
-
- // Update row and column count
- this.setRowCount(vRowCount);
- if (!vUpdate) {
- this.setColumnCount(qx.lang.Object.getLength(vColumns));
- }
-
- // Apply height to all rows
- for (var i=0; i<vRowCount; i++) {
- this.setRowHeight(i, this._rowHeight);
- }
-
- if (!vUpdate)
- {
- // Apply width and alignment to all columns
- var vCount = 0;
- for (var vCol in vColumns)
- {
- this.setColumnHorizontalAlignment(vCount, vColumns[vCol].align);
- this.setColumnWidth(vCount, vColumns[vCol].width);
-
- vCount++;
- }
- }
-
- // Store last row count
- this._lastRowCount = vRowCount;
-}
-
-qx.Proto._currentScrollTop = -1;
-
-qx.Proto._updateRendering = function(vForce)
-{
- if (this._updatingRendering) {
- return;
- }
-
- var vScrollTop = (this._initialLayoutDone
- ? this.getView().getScroll().getScrollTop()
- : 0);
-
- this._updatingRendering = true;
- this._currentScrollTop = vScrollTop;
-
- for (var i=0; i<this._rowCount; i++) {
- this._updateRow(i);
- }
-
- delete this._updatingRendering;
-}
-
-qx.Proto._updateRow = function(vRelativeRow)
-{
- var vData = this._data;
- var vRowOffset = Math.floor(this._currentScrollTop / this._rowHeight);
-
- var vColumnCount = this.getColumnCount();
- var vColumns = this._columns;
-
- var vChildren = this.getVisibleChildren();
- var vChild, vEntry, vCol;
-
- var j=0;
-
- for (vCol in vColumns)
- {
- vEntry = vData[vRowOffset+vRelativeRow];
- vChild = vChildren[vColumnCount*vRelativeRow+(j++)];
-
- if (vChild)
- {
- if (vEntry && vEntry._selected) {
- vChild.addState("selected");
- } else {
- vChild.removeState("selected");
- }
- vChild.set(vEntry
- ? vEntry[vCol]
- : vColumns[vCol].empty || vColumns[vCol].contentClass.empty);
- }
- }
-}
-
-qx.Proto._onscroll = function(e) {
- this._updateRendering();
-}
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DIMENSION CACHE
----------------------------------------------------------------------------
-*/
-
-qx.Proto._changeInnerHeight = function(vNew, vOld)
-{
- this._updateLayout(true);
- this._updateRendering(true);
-
- return qx.ui.layout.GridLayout.prototype._changeInnerHeight.call(this,
- vNew,
- vOld);
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- MANAGER BINDING
----------------------------------------------------------------------------
-*/
-
-qx.Proto.getManager = function() {
- return this._manager;
-}
-
-qx.Proto.getListViewTarget = function(e)
-{
- var vEventTop = e.getPageY();
- var vPaneTop = qx.html.Location.getPageInnerTop(this.getElement());
- var vItemNo = Math.floor(this._currentScrollTop / this._rowHeight) +
- Math.floor((vEventTop - vPaneTop) / this._rowHeight);
-
- return this._data[vItemNo];
-}
-
-qx.Proto.getSelectedItem = function() {
- return this.getSelectedItems()[0];
-}
-
-qx.Proto.getSelectedItems = function() {
- return this._manager.getSelectedItems();
-}
-
-qx.Proto.getData = function() {
- return this._data;
-}
-
-// use static row height
-qx.Proto.getItemHeight = function(vItem) {
- return this._rowHeight;
-}
-
-// use the full inner width of the pane
-qx.Proto.getItemWidth = function(vItem) {
- return qx.html.Dimension.getInnerWidth(this.getElement());
-}
-
-qx.Proto.getItemLeft = function(vItem) {
- return 0;
-}
-
-qx.Proto.getItemTop = function(vItem) {
- return this._data.indexOf(vItem) * this._rowHeight;
-}
-
-
-
-
-/*
----------------------------------------------------------------------------
- MOUSE EVENT HANDLER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._onmousewheel = function(e)
-{
- var vScroll = this.getView().getScroll();
- vScroll.setScrollTop(vScroll.getScrollTop() - (e.getWheelDelta() * 20));
-}
-
-qx.Proto._onmouseover = function(e)
-{
- var vTarget = this.getListViewTarget(e);
- if (vTarget) {
- this._manager.handleMouseOver(vTarget, e);
- }
-}
-
-qx.Proto._onmousedown = function(e)
-{
- var vTarget = this.getListViewTarget(e);
- if (vTarget) {
- this._manager.handleMouseDown(vTarget, e);
- }
-}
-
-qx.Proto._onmouseup = function(e)
-{
- var vTarget = this.getListViewTarget(e);
- if (vTarget) {
- this._manager.handleMouseUp(vTarget, e);
- }
-}
-
-qx.Proto._onclick = function(e)
-{
- var vTarget = this.getListViewTarget(e);
- if (vTarget) {
- this._manager.handleClick(vTarget, e);
- }
-}
-
-qx.Proto._ondblclick = function(e)
-{
- var vTarget = this.getListViewTarget(e);
- if (vTarget) {
- this._manager.handleDblClick(vTarget, e);
- }
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- KEY EVENT HANDLER
----------------------------------------------------------------------------
-*/
-
-qx.Proto._onkeypress = function(e)
-{
- this._manager.handleKeyPress(e);
- e.preventDefault();
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- MANAGER SELECTION
----------------------------------------------------------------------------
-*/
-
-qx.Proto._updateSelectionState = function(vItem, vIsSelected)
-{
- vItem._selected = vIsSelected;
- this._updateItem(vItem);
-}
-
-qx.Proto._updateAnchorState = function(vItem, vIsAnchor)
-{
- vItem._anchor = vIsAnchor;
- this._updateItem(vItem);
-}
-
-qx.Proto._updateLeadState = function(vItem, vIsLead)
-{
- vItem._lead = vIsLead;
- this._updateItem(vItem);
-}
-
-qx.Proto.scrollItemIntoView = function(vItem, vAlignLeftTop)
-{
- this.scrollItemIntoViewX(vItem, vAlignLeftTop);
- this.scrollItemIntoViewY(vItem, vAlignLeftTop);
-}
-
-qx.Proto.scrollItemIntoViewX = function(vItem, vAlignLeft) {
- // this.error("Not implemented in qx.ui.listview.ListViewPane!");
-}
-
-qx.Proto.scrollItemIntoViewY = function(vItem, vAlignTop)
-{
- var vItems = this._data;
- var vOffset = vItems.indexOf(vItem) * this._rowHeight;
- var vHeight = this._rowHeight;
-
- // normalize client height (we want that the item is fully visible)
- var vParentHeight = (Math.floor(this.getClientHeight() / this._rowHeight) *
- this._rowHeight);
- var vParentScrollTop = this._currentScrollTop;
-
- var vNewScrollTop = null;
-
- if (vAlignTop)
- {
- vNewScrollTop = vOffset;
- }
- else if (vAlignTop == false)
- {
- vNewScrollTop = vOffset + vHeight - vParentHeight;
- }
- else if (vHeight > vParentHeight || vOffset < vParentScrollTop)
- {
- vNewScrollTop = vOffset;
- }
- else if ((vOffset + vHeight) > (vParentScrollTop + vParentHeight))
- {
- vNewScrollTop = vOffset + vHeight - vParentHeight;
- }
-
- if (vNewScrollTop != null) {
- this.getView().getScroll().setScrollTop(vNewScrollTop);
- }
-}
-
-qx.Proto.setScrollTop = function(vScrollTop)
-{
- this.getView().getScroll().setScrollTop(vScrollTop);
- this._updateRendering();
-}
-
-qx.Proto.getScrollTop = function() {
- return this._currentScrollTop;
-}
-
-qx.Proto.setScrollLeft = function() {
- this.error("Not implemented in qx.ui.listview.ListViewPane!");
-}
-
-qx.Proto.getScrollLeft = function() {
- return 0;
-}
-
-qx.Proto.isItemVisible = function(vItem)
-{
- var vIndex = this._data.indexOf(vItem);
- var vRowStart = Math.floor(this._currentScrollTop / this._rowHeight);
- var vRowLength = Math.ceil(this.getClientHeight() / this._rowHeight);
-
- return vIndex >= vRowStart && vIndex <= (vRowStart + vRowLength);
-}
-
-qx.Proto.getRelativeItemPosition = function(vItem)
-{
- var vIndex = this._data.indexOf(vItem);
- var vRowStart = Math.floor(this._currentScrollTop / this._rowHeight);
-
- return vIndex - vRowStart;
-}
-
-qx.Proto._updateItem = function(vItem)
-{
- var vIndex = this._data.indexOf(vItem);
- var vRowStart = Math.floor(this._currentScrollTop / this._rowHeight);
- var vRowLength = Math.ceil(this.getClientHeight() / this._rowHeight);
-
- if (vIndex < vRowStart || vIndex > (vRowStart + vRowLength)) {
- return;
- }
-
- this._updateRow(vIndex - vRowStart);
-}
-
-
-
-
-
-
-/*
----------------------------------------------------------------------------
- DISPOSER
----------------------------------------------------------------------------
-*/
-
-qx.Proto.dispose = function()
-{
- if (this.getDisposed()) {
- return;
- }
-
-
- // ************************************************************************
- // MOUSE EVENT LISTENER
- // ************************************************************************
- this.removeEventListener("mousewheel", this._onmousewheel);
- this.removeEventListener("mouseover", this._onmouseover);
- this.removeEventListener("mousedown", this._onmousedown);
- this.removeEventListener("mouseup", this._onmouseup);
- this.removeEventListener("click", this._onclick);
- this.removeEventListener("dblclick", this._ondblclick);
-
-
- // ************************************************************************
- // KEY EVENT LISTENER
- // ************************************************************************
- this.removeEventListener("keypress", this._onkeypress);
-
-
- // ************************************************************************
- // DATA
- // ************************************************************************
- delete this._data;
- delete this._columns;
-
-
- // ************************************************************************
- // MANAGER
- // ************************************************************************
- if (this._manager)
- {
- this._manager.dispose();
- this._manager = null;
- }
-
- return qx.ui.layout.GridLayout.prototype.dispose.call(this);
-}