[jbpm-commits] JBoss JBPM SVN: r2839 - in projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client: task and 1 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Mon Nov 10 06:12:24 EST 2008
Author: heiko.braun at jboss.com
Date: 2008-11-10 06:12:23 -0500 (Mon, 10 Nov 2008)
New Revision: 2839
Modified:
projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessDefinitionList.java
projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessInstanceListEditor.java
projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/task/TaskList.java
projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/RemoteListView.java
Log:
JBPM-1803: RemoteListView doesn't resize properly when the store is reloaded
Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessDefinitionList.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessDefinitionList.java 2008-11-10 10:50:48 UTC (rev 2838)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessDefinitionList.java 2008-11-10 11:12:23 UTC (rev 2839)
@@ -149,6 +149,8 @@
protected void onRecordsLoaded(Record[] records)
{
+ row2ProcessMap.clear();
+
int i = 0;
for(Record r : records)
{
Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessInstanceListEditor.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessInstanceListEditor.java 2008-11-10 10:50:48 UTC (rev 2838)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessInstanceListEditor.java 2008-11-10 11:12:23 UTC (rev 2839)
@@ -21,16 +21,14 @@
*/
package org.jboss.bpm.console.client.process;
+import com.allen_sauer.gwt.log.client.Log;
import com.google.gwt.http.client.*;
import com.gwtext.client.core.EventObject;
-import com.gwtext.client.core.Function;
import com.gwtext.client.core.Position;
import com.gwtext.client.data.Record;
import com.gwtext.client.widgets.Button;
import com.gwtext.client.widgets.PaddedPanel;
import com.gwtext.client.widgets.Panel;
-import com.gwtext.client.widgets.layout.ColumnLayout;
-import com.gwtext.client.widgets.layout.ColumnLayoutData;
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
import com.gwtext.client.widgets.form.DateField;
import com.gwtext.client.widgets.form.FieldSet;
@@ -38,14 +36,15 @@
import com.gwtext.client.widgets.form.TextField;
import com.gwtext.client.widgets.grid.RowSelectionModel;
import com.gwtext.client.widgets.grid.event.RowSelectionListenerAdapter;
-import com.allen_sauer.gwt.log.client.Log;
-import org.jboss.bpm.console.client.MainView;
+import com.gwtext.client.widgets.layout.ColumnLayout;
+import com.gwtext.client.widgets.layout.ColumnLayoutData;
import org.jboss.bpm.console.client.Editor;
+import org.jboss.bpm.console.client.MainView;
import org.jboss.bpm.console.client.UIConstants;
import org.jboss.bpm.console.client.model.ProcessDefinition;
import org.jboss.bpm.console.client.model.ProcessInstance;
-import org.jboss.bpm.console.client.widgets.TeaserPanel;
import org.jboss.bpm.console.client.widgets.HelpPanel;
+import org.jboss.bpm.console.client.widgets.TeaserPanel;
/**
* @author Heiko.Braun <heiko.braun at jboss.com>
@@ -174,18 +173,8 @@
}
}
);
- instanceList.getGrid().setSelectionModel(sm);
+ instanceList.setRowSelectionModel(sm);
- //select the first row after a little delay so that the rows are rendered
- instanceList.getGrid().doOnRender(
- new Function()
- {
- public void execute() {
- sm.selectFirstRow();
- }
- }, 10);
-
-
outerFormPanel.add(formPanel);
// ----------------------------------
Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/task/TaskList.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/task/TaskList.java 2008-11-10 10:50:48 UTC (rev 2838)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/task/TaskList.java 2008-11-10 11:12:23 UTC (rev 2839)
@@ -72,7 +72,7 @@
protected void onExamine(final int row)
{
final TaskReference taskRef = row2taskref.get(row);
- String url = view.getUrlBuilder().getTaskFormDefURL(taskRef.getProcessId(), taskRef.getId());
+ /*String url = view.getUrlBuilder().getTaskFormDefURL(taskRef.getProcessId(), taskRef.getId());
MessageBox.show(new MessageBoxConfig() {
{
@@ -145,7 +145,7 @@
displayForm(formPanel);
}
}
- );
+ ); */
}
private void displayForm(FormPanel formPanel)
Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/RemoteListView.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/RemoteListView.java 2008-11-10 10:50:48 UTC (rev 2838)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/RemoteListView.java 2008-11-10 11:12:23 UTC (rev 2839)
@@ -29,6 +29,7 @@
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
import com.gwtext.client.widgets.grid.ColumnModel;
import com.gwtext.client.widgets.grid.GridPanel;
+import com.gwtext.client.widgets.grid.RowSelectionModel;
import com.gwtext.client.widgets.grid.event.GridCellListener;
import com.allen_sauer.gwt.log.client.Log;
import org.jboss.bpm.console.client.MainView;
@@ -52,20 +53,23 @@
private GridPanel grid;
protected String title;
- private Store store;
- private PagingToolbar pagingToolbar;
+ private Store store;
- private boolean storeInit = false;
-
private ToolbarButton addButton;
private ToolbarButton deleteButton;
+ boolean addBtnEnabled = true;
+ boolean deleteBtnEnabled = true;
+
+ private RowSelectionModel rowSelectionModel;
+
public RemoteListView(String titleName, MainView view, String resourceUrl)
{
super();
this.title = titleName;
this.view = view;
+ this.setId( getId() + "("+titleName+")");
// ----------------------------------------
@@ -76,31 +80,12 @@
// ----------------------------------------
- grid = createGridPanel(titleName);
-
- // ----------------------------------------
-
final JsonReader reader = createReader();
-
- // ----------------------------------------
-
- final ColumnModel columnModel = createColumnModel();
- grid.setColumnModel(columnModel);
- grid.setAutoExpandColumn("expand");
- //grid.setAutoExpandMin(300);
-
- // ----------------------------------------
-
DataProxy dataProxy = new ScriptTagProxy(resourceUrl, 1000*10);
- store = new Store(dataProxy, reader, false); // boolean==remoteSort, add's GET parameters
- store.addStoreListener( new ListViewStoreListener(this, grid) );
- grid.setStore(store);
+ store = new Store(dataProxy, reader, false); // boolean==remoteSort, add's GET parameters
+ store.addStoreListener( new ListViewStoreListener(this) );
- // ------------------------------------------
- pagingToolbar = createToolbar(store);
- grid.setBottomToolbar(pagingToolbar);
-
// PanelListener will lazy load store data.
// Store.onLoad() callback will populate the grid
// and add it to the container panel.
@@ -108,7 +93,6 @@
{
public boolean doBeforeRender(Component component)
{
- Log.debug("Reload store trigger");
reloadStore();
return true;
}
@@ -119,18 +103,12 @@
protected void enableAddBtn(boolean isEnabled)
{
- if(isEnabled)
- this.addButton.enable();
- else
- this.addButton.disable();
+ this.addBtnEnabled = isEnabled;
}
protected void enableDeleteBtn(boolean isEnabled)
{
- if(isEnabled)
- this.deleteButton.enable();
- else
- this.deleteButton.disable();
+ this.deleteBtnEnabled = isEnabled;
}
private GridPanel createGridPanel(String titleName)
@@ -173,34 +151,39 @@
examineButton.setTooltip("Examine");
pagingToolbar.addButton(examineButton);
-
- addButton = new ToolbarButton("Add", new ButtonListenerAdapter()
+ if(addBtnEnabled)
{
- public void onClick(Button button, EventObject e)
+ addButton = new ToolbarButton("Add", new ButtonListenerAdapter()
{
- onAdd();
- }
- });
- //addButton.setIcon("images/icons/add.png");
- addButton.setTooltip("Add");
- pagingToolbar.addButton( addButton );
+ public void onClick(Button button, EventObject e)
+ {
+ onAdd();
+ }
+ });
+ //addButton.setIcon("images/icons/add.png");
+ addButton.setTooltip("Add");
+ pagingToolbar.addButton( addButton );
+ }
- deleteButton = new ToolbarButton("Remove", new ButtonListenerAdapter()
+ if(deleteBtnEnabled)
{
- public void onClick(Button button, EventObject e)
+ deleteButton = new ToolbarButton("Remove", new ButtonListenerAdapter()
{
- if (-1 == selectedRowIndex)
+ public void onClick(Button button, EventObject e)
{
- MessageBox.alert("Please select a process.");
- } else
- {
- onDelete(selectedRowIndex);
+ if (-1 == selectedRowIndex)
+ {
+ MessageBox.alert("Please select a process.");
+ } else
+ {
+ onDelete(selectedRowIndex);
+ }
}
- }
- });
- //deleteButton.setIcon("images/icons/remove.png");
- deleteButton.setTooltip("Remove");
- pagingToolbar.addButton(deleteButton);
+ });
+ //deleteButton.setIcon("images/icons/remove.png");
+ deleteButton.setTooltip("Remove");
+ pagingToolbar.addButton(deleteButton);
+ }
return pagingToolbar;
}
@@ -220,13 +203,11 @@
private class ListViewStoreListener extends StoreListenerAdapter
{
- Panel containerPanel;
- GridPanel grid;
+ Panel containerPanel;
- public ListViewStoreListener(Panel containerPanel, GridPanel grid)
+ public ListViewStoreListener(Panel containerPanel)
{
this.containerPanel = containerPanel;
- this.grid = grid;
}
/**
@@ -235,24 +216,43 @@
*/
public void onLoad(Store store, Record[] records)
{
+
onRecordsLoaded(records);
- if(!storeInit)
- {
- containerPanel.clear();
- containerPanel.add(grid);
- storeInit = true;
- }
+ grid = assembleGrid();
+
+ containerPanel.clear();
+ containerPanel.add(grid);
containerPanel.doLayout();
}
public void onLoadException(Throwable throwable)
{
- Log.error("Failed to load remote data", throwable);
+ Log.error("Failed to load remote data", throwable);
}
- };
+ }
+ private GridPanel assembleGrid()
+ {
+ GridPanel grid = createGridPanel(title);
+
+ final ColumnModel columnModel = createColumnModel();
+ grid.setColumnModel(columnModel);
+ grid.setAutoExpandColumn("expand");
+
+ grid.setStore(store);
+
+ PagingToolbar pagingToolbar = createToolbar(store);
+ grid.setBottomToolbar(pagingToolbar);
+
+ if(rowSelectionModel!=null)
+ grid.setSelectionModel(rowSelectionModel);
+
+ return grid;
+
+ }
+
private class ListViewCellListener implements GridCellListener
{
public void onCellClick(GridPanel grid, int rowIndex, int colindex, EventObject e)
@@ -278,6 +278,12 @@
public void reloadStore()
{
+ Log.debug("Reload " + this.getId());
store.load(0,PAGE_SIZE);
}
+
+ public void setRowSelectionModel(RowSelectionModel rowSelectionModel)
+ {
+ this.rowSelectionModel = rowSelectionModel;
+ }
}
More information about the jbpm-commits
mailing list