mirror of
https://github.com/samba-team/samba.git
synced 2025-03-09 08:58:35 +03:00
r21286: Tree column now resizes wiith splitter adjustment, but scrollbars don't yet update properly
(This used to be commit a66b64026a5d80a1e16b2fc9665143512975a53e)
This commit is contained in:
parent
7deea1aead
commit
cb89806824
@ -71,7 +71,8 @@ qx.Proto.onAppear = function(tableColumnModel, event)
|
||||
|
||||
|
||||
/**
|
||||
* Called when the window is resized.
|
||||
* Called when the table width changes due to either a window size change
|
||||
* or a parent object changing size causing the table to change size.
|
||||
*
|
||||
* @param tableColumnModel {qx.ui.table.ResizeTableColumnModel}
|
||||
* The table column model in use. Of particular interest is the property
|
||||
@ -80,11 +81,11 @@ qx.Proto.onAppear = function(tableColumnModel, event)
|
||||
* of columns.
|
||||
*
|
||||
* @param event
|
||||
* The <i>onwindowresize</i> event object.
|
||||
* The <i>ontablewidthchanged</i> event object.
|
||||
*/
|
||||
qx.Proto.onWindowResize = function(tableColumnModel, event)
|
||||
qx.Proto.onTableWidthChanged = function(tableColumnModel, event)
|
||||
{
|
||||
throw new Error("onWindowResize is abstract");
|
||||
throw new Error("onTableWidthChanged is abstract");
|
||||
};
|
||||
|
||||
|
||||
|
@ -198,7 +198,7 @@ qx.Proto.onAppear = function(tableColumnModel, event)
|
||||
|
||||
|
||||
// overloaded
|
||||
qx.Proto.onWindowResize = function(tableColumnModel, event)
|
||||
qx.Proto.onTableWidthChanged = function(tableColumnModel, event)
|
||||
{
|
||||
// Calculate column widths
|
||||
this._computeColumnsFlexWidth(tableColumnModel, event);
|
||||
|
@ -21,6 +21,7 @@
|
||||
|
||||
#module(table)
|
||||
#require(qx.ui.table.DefaultResizeBehavior)
|
||||
#embed(qx.icontheme/16/actions/view-refresh.png)
|
||||
|
||||
************************************************************************ */
|
||||
|
||||
@ -50,7 +51,7 @@ function()
|
||||
* The behavior to use.
|
||||
*
|
||||
* The provided behavior must extend {link @AbstractResizeBehavior} and
|
||||
* implement the <i>onAppear</i>, <i>onWindowResize</i>,
|
||||
* implement the <i>onAppear</i>, <i>onTableWidthChanged</i>,
|
||||
* <i>onColumnWidthChanged</i> and <i>onVisibilityChanged</i>methods.
|
||||
*/
|
||||
qx.OO.addProperty(
|
||||
@ -90,9 +91,8 @@ qx.Proto.init = function(numColumns, table)
|
||||
// We'll do our column resizing when the table appears, ...
|
||||
table.addEventListener("appear", this._onappear, this);
|
||||
|
||||
// ... when the window is resized, ...
|
||||
var d = qx.ui.core.ClientDocument.getInstance();
|
||||
d.addEventListener("windowresize", this._onwindowresize, this);
|
||||
// ... when the inner width of the table changes, ...
|
||||
table.addEventListener("tableWidthChanged", this._ontablewidthchanged, this);
|
||||
|
||||
// ... when columns are resized, ...
|
||||
this.addEventListener("widthChanged", this._oncolumnwidthchanged, this);
|
||||
@ -138,7 +138,7 @@ qx.Proto._addResetColumnWidthButton = function(event)
|
||||
};
|
||||
|
||||
/**
|
||||
* Event handler for the "onappear" event.
|
||||
* Event handler for the "appear" event.
|
||||
*
|
||||
* @param event {qx.event.type.Event}
|
||||
* The "onappear" event object.
|
||||
@ -162,12 +162,12 @@ qx.Proto._onappear = function(event)
|
||||
|
||||
|
||||
/**
|
||||
* Event handler for the "onwindowresize" event.
|
||||
* Event handler for the "tableWidthChanged" event.
|
||||
*
|
||||
* @param event {qx.event.type.Event}
|
||||
* The "onwidowresize" event object.
|
||||
*/
|
||||
qx.Proto._onwindowresize = function(event)
|
||||
qx.Proto._ontablewidthchanged = function(event)
|
||||
{
|
||||
// Is this a recursive call or has the table not yet been rendered?
|
||||
if (this._bInProgress || ! this._bAppeared)
|
||||
@ -177,17 +177,17 @@ qx.Proto._onwindowresize = function(event)
|
||||
}
|
||||
|
||||
this._bInProgress = true;
|
||||
this.debug("onwindowresize");
|
||||
this.getBehavior().onWindowResize(this, event);
|
||||
this.debug("ontablewidthchanged");
|
||||
this.getBehavior().onTableWidthChanged(this, event);
|
||||
this._bInProgress = false;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Event handler for the "oncolumnwidthchanged" event.
|
||||
* Event handler for the "widthChanged" event.
|
||||
*
|
||||
* @param event {qx.event.type.DataEvent}
|
||||
* The "oncolumnwidthchanged" event object.
|
||||
* The "widthChanged" event object.
|
||||
*/
|
||||
qx.Proto._oncolumnwidthchanged = function(event)
|
||||
{
|
||||
@ -206,10 +206,10 @@ qx.Proto._oncolumnwidthchanged = function(event)
|
||||
|
||||
|
||||
/**
|
||||
* Event handler for the "onvisibilitychangned" event.
|
||||
* Event handler for the "visibilityChanged" event.
|
||||
*
|
||||
* @param event {qx.event.type.DataEvent}
|
||||
* The "onvisibilitychanged" event object.
|
||||
* The "visibilityChanged" event object.
|
||||
*/
|
||||
qx.Proto._onvisibilitychanged = function(event)
|
||||
{
|
||||
|
@ -42,6 +42,9 @@
|
||||
* The event data is a map with two properties: table and menu. Listeners
|
||||
* may add additional items to the menu, which appear at the bottom of the
|
||||
* menu.
|
||||
*
|
||||
* @event tableWidthChanged {qx.event.type.Event}
|
||||
* Dispatched when the inner width of the table has changed.
|
||||
*/
|
||||
qx.OO.defineClass("qx.ui.table.Table", qx.ui.layout.VerticalBoxLayout,
|
||||
function(tableModel) {
|
||||
@ -1207,6 +1210,8 @@ qx.Proto.setColumnWidth = function(col, width) {
|
||||
qx.Proto._changeInnerWidth = function(newValue, oldValue) {
|
||||
var self = this;
|
||||
window.setTimeout(function() {
|
||||
self.createDispatchEvent("tableWidthChanged");
|
||||
self._updateScrollerWidths();
|
||||
self._updateScrollBarVisibility();
|
||||
qx.ui.core.Widget.flushGlobalQueues();
|
||||
}, 0);
|
||||
|
Loading…
x
Reference in New Issue
Block a user