[richfaces-svn-commits] JBoss Rich Faces SVN: r4702 - trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Tue Dec 11 08:26:55 EST 2007


Author: konstantin.mishin
Date: 2007-12-11 08:26:55 -0500 (Tue, 11 Dec 2007)
New Revision: 4702

Modified:
   trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js
   trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/ScrollableGrid.js
Log:
RF-1453

Modified: trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js
===================================================================
--- trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js	2007-12-11 13:26:33 UTC (rev 4701)
+++ trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/GridBody.js	2007-12-11 13:26:55 UTC (rev 4702)
@@ -267,7 +267,9 @@
 		this.container.setHeight(height - fixH);
 		
 		this.defaultRowHeight = this._calcDefaultRowHeight();
+		this.sizeBox.hide();
 		this.sizeBox.setHeight(this.defaultRowHeight * this.grid.dataModel.getCount() + fixH);
+		this.sizeBox.show();
 		this.helpObject1.moveToY(this.sizeBox.getHeight()+ this.defaultRowHeight + 5);
 		this.helpObject2.moveToY(this.sizeBox.getHeight()+ this.defaultRowHeight + 5);
 
@@ -308,6 +310,9 @@
 		}
 		else if(to == this.grid.dataModel.getCount()) {
 			from = to - this.rowsCount;
+			if (from < 0) {
+				from = 0;
+			}
 		}
 
 		var range = $R(from, to);
@@ -798,14 +803,14 @@
 	},
 	
 	restoreScrollState: function() {	
+		this.scrollInput = $(this.gridId + ":si");
 		var value = this.scrollInput.value
 		if(value !=''){
 			var values = value.split(',');
+			this.currentPos = values[0];
 			this.scrollBox.getElement().scrollTop = values[0];
-			this.currentPos = values[0];
 			this.currRange.start = values[1];
 			this.currRange.end = values[2];
-			this._onContentVScroll(values[0]);
 			var visibleRowPos = this.currRange.start * this.defaultRowHeight;
 			this.templFrozen.moveToY(visibleRowPos);
 			this.templNormal.moveToY(visibleRowPos);

Modified: trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/ScrollableGrid.js
===================================================================
--- trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/ScrollableGrid.js	2007-12-11 13:26:33 UTC (rev 4701)
+++ trunk/ui/scrollableDataTable/src/main/javascript/ClientUI/controls/grid/ScrollableGrid.js	2007-12-11 13:26:55 UTC (rev 4702)
@@ -77,6 +77,7 @@
 	},
 	
 	onSortComplete : function(request, event, data){
+		this.dataModel.count = $(this.client_id + "_rows_input").value;
 		var options = request.getJSON("options");				
 		Utils.AJAX.updateRows(options,request,
 								this,this.client_id, 
@@ -86,8 +87,10 @@
 									this.eventOnPostSort.fire(options.column, options.order);
 								}]);
 		this.updateLayout();
+		this.getBody().restoreScrollState();
 	},
 	onScrollComplete : function(request, event, data){
+		this.dataModel.count = $(this.client_id + "_rows_input").value;
 		var options = this.dataModel.getCurrentOptions();
 		window.loadingServerTime = (new Date()).getTime();
 		Utils.AJAX.updateRows(options,request,
@@ -98,6 +101,8 @@
 									this.eventOnPostScroll.fire(this.getBody().currRange.start);
 								}]);								
 								
+		this.updateLayout();
+		this.getBody().restoreScrollState();
 		window.loadingEndTime = (new Date()).getTime();
 		
 		// TODO: remove this time statistic logging




More information about the richfaces-svn-commits mailing list