[overlord-commits] Overlord SVN: r947 - in bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client: process and 1 other directories.
overlord-commits at lists.jboss.org
overlord-commits at lists.jboss.org
Tue Feb 2 06:57:16 EST 2010
Author: heiko.braun at jboss.com
Date: 2010-02-02 06:57:15 -0500 (Tue, 02 Feb 2010)
New Revision: 947
Modified:
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/LoadingOverlay.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksAction.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksParticipationAction.java
bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java
Log:
Fix taskk toolset initialization. Added LoadingOverlay to task related tools
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/AbstractRESTAction.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -23,6 +23,7 @@
import com.google.gwt.http.client.*;
import com.google.gwt.user.client.Timer;
+import com.google.gwt.user.client.ui.Widget;
import com.mvc4g.client.ActionInterface;
import com.mvc4g.client.Controller;
import org.jboss.bpm.console.client.ApplicationContext;
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/LoadingOverlay.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/LoadingOverlay.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/common/LoadingOverlay.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -33,7 +33,7 @@
public static void on(Widget parent, boolean loading)
{
- if(loading)
+ if(parent !=null && loading)
{
int left = parent.getAbsoluteLeft();
int top = parent.getAbsoluteTop();
@@ -41,11 +41,14 @@
int width = parent.getOffsetWidth();
int height = parent.getOffsetHeight();
- p = new InfoPanel();
- p.setStylePrimaryName("bpm-loading-overy");
- p.setWidget(new Image("images/loading_lite.gif"));
- p.setPopupPosition(left+(width/2)-15, top+(height/2)-15);
- p.show();
+ if(width>100 & height>100) // workaround hidden panels
+ {
+ p = new InfoPanel();
+ p.setStylePrimaryName("bpm-loading-overy");
+ p.setWidget(new Image("images/loading_lite.gif"));
+ p.setPopupPosition(left+(width/2)-15, top+(height/2)-15);
+ p.show();
+ }
}
else
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/process/DefinitionListView.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -285,13 +285,14 @@
model.clear();
+ // clear instance panel
+ controller.handleEvent(new Event(ClearInstancesAction.ID, null));
+
// clear details
controller.handleEvent(
new Event(UpdateProcessDetailAction.ID, null)
);
- // clear instance panel
- controller.handleEvent(new Event(ClearInstancesAction.ID, null));
}
public void update(Object... data)
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AbstractTaskList.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -62,8 +62,6 @@
this.controller = controller;
}
- public abstract void update(String identity, List<TaskRef> tasks);
-
public TaskRef getSelection()
{
TaskRef selection = null;
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/AssignedTasksView.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -25,6 +25,7 @@
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.gen2.table.event.client.RowSelectionEvent;
import com.google.gwt.gen2.table.event.client.RowSelectionHandler;
+import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Widget;
import com.mvc4g.client.Controller;
@@ -36,10 +37,7 @@
import org.gwt.mosaic.ui.client.list.DefaultListModel;
import org.jboss.bpm.console.client.ApplicationContext;
import org.jboss.bpm.console.client.ServerPlugins;
-import org.jboss.bpm.console.client.common.IFrameWindowCallback;
-import org.jboss.bpm.console.client.common.IFrameWindowPanel;
-import org.jboss.bpm.console.client.common.PagingCallback;
-import org.jboss.bpm.console.client.common.PagingPanel;
+import org.jboss.bpm.console.client.common.*;
import org.jboss.bpm.console.client.model.TaskRef;
import org.jboss.bpm.console.client.task.events.DetailViewEvent;
import org.jboss.bpm.console.client.task.events.TaskIdentityEvent;
@@ -54,7 +52,7 @@
* @author Heiko.Braun <heiko.braun at jboss.com>
*/
@LoadTool(name = "Personal Tasks", group = "Tasks", priority = 2, icon = "userIcon")
-public class AssignedTasksView extends AbstractTaskList implements WSComponent
+public class AssignedTasksView extends AbstractTaskList implements WSComponent, DataDriven
{
public final static String ID = AssignedTasksView.class.getName();
@@ -71,7 +69,7 @@
private PagingPanel pagingPanel;
- MosaicPanel panel;
+ private MosaicPanel panel;
public AssignedTasksView()
{
@@ -79,7 +77,6 @@
appContext = Registry.get(ApplicationContext.class);
}
- @Override
public Widget getWidget()
{
panel = new MosaicPanel(new BorderLayout());
@@ -98,6 +95,9 @@
{
if(!isInitialized)
{
+ // workaround
+ OpenTasksView.registerCommonActions(controller);
+
taskList = new MosaicPanel( new BoxLayout(BoxLayout.Orientation.VERTICAL));
taskList.setPadding(0);
taskList.setWidgetSpacing(0);
@@ -272,28 +272,62 @@
ServerPlugins.has("org.jboss.bpm.console.server.plugin.FormDispatcherPlugin");
viewBtn.setEnabled(hasDispatcherPlugin);
+
+ Timer t = new Timer()
+ {
+ @Override
+ public void run()
+ {
+ // force loading
+ controller.handleEvent(
+ new Event(LoadTasksAction.ID, appContext.getAuthentication().getUsername())
+ );
+ }
+ };
+
+ t.schedule(50);
+
isInitialized = true;
}
}
- public void update(String identity, List<TaskRef> tasks)
+ public void reset()
{
- this.identity = identity;
- this.cachedTasks = tasks;
- if(isInitialized())pagingPanel.reset();
+ final DefaultListModel<TaskRef> model =
+ (DefaultListModel<TaskRef>) listBox.getModel();
+
+ model.clear();
+
+ // clear details
+ controller.handleEvent(
+ new Event(UpdateDetailsAction.ID, new DetailViewEvent("AssignedDetailView", null))
+ );
+ }
+
+ public void update(Object... data)
+ {
+ this.identity = (String)data[0];
+ this.cachedTasks = (List<TaskRef>)data[1];
+ pagingPanel.reset();
renderUpdate();
}
+ public void setLoading(boolean isLoading)
+ {
+ if(panel.isVisible())
+ LoadingOverlay.on(taskList, isLoading);
+ }
+
private void renderUpdate()
{
// lazy init
initialize();
+ reset();
+
final DefaultListModel<TaskRef> model =
(DefaultListModel<TaskRef>) listBox.getModel();
- model.clear();
-
List<TaskRef> trimmed = pagingPanel.trim(cachedTasks);
for(TaskRef task : trimmed)
{
@@ -301,12 +335,6 @@
model.add(task);
}
- // clear details
- controller.handleEvent(
- new Event(UpdateDetailsAction.ID, new DetailViewEvent("AssignedDetailView", null))
- );
-
-
}
}
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksAction.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksAction.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksAction.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -26,6 +26,7 @@
import com.mvc4g.client.Controller;
import org.jboss.bpm.console.client.URLBuilder;
import org.jboss.bpm.console.client.common.AbstractRESTAction;
+import org.jboss.bpm.console.client.common.DataDriven;
import org.jboss.bpm.console.client.model.DTOParser;
import org.jboss.bpm.console.client.model.TaskRef;
import org.jboss.bpm.console.client.util.ConsoleLog;
@@ -59,6 +60,12 @@
return RequestBuilder.GET;
}
+ @Override
+ protected DataDriven getDataDriven(Controller controller)
+ {
+ return (AssignedTasksView)controller.getView(AssignedTasksView.ID);
+ }
+
public void handleSuccessfulResponse(
final Controller controller, final Object event, Response response)
{
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksParticipationAction.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksParticipationAction.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/LoadTasksParticipationAction.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -26,6 +26,7 @@
import com.mvc4g.client.Controller;
import org.jboss.bpm.console.client.URLBuilder;
import org.jboss.bpm.console.client.common.AbstractRESTAction;
+import org.jboss.bpm.console.client.common.DataDriven;
import org.jboss.bpm.console.client.model.DTOParser;
import org.jboss.bpm.console.client.model.TaskRef;
import org.jboss.bpm.console.client.util.ConsoleLog;
@@ -59,6 +60,12 @@
return RequestBuilder.GET;
}
+ @Override
+ protected DataDriven getDataDriven(Controller controller)
+ {
+ return (OpenTasksView)controller.getView(OpenTasksView.ID);
+ }
+
public void handleSuccessfulResponse(
final Controller controller, final Object event, Response response)
{
Modified: bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java
===================================================================
--- bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java 2010-02-02 11:25:31 UTC (rev 946)
+++ bpm-console/trunk/gui/war/src/main/java/org/jboss/bpm/console/client/task/OpenTasksView.java 2010-02-02 11:57:15 UTC (rev 947)
@@ -25,6 +25,7 @@
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.gen2.table.event.client.RowSelectionEvent;
import com.google.gwt.gen2.table.event.client.RowSelectionHandler;
+import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Widget;
import com.mvc4g.client.Controller;
@@ -35,6 +36,8 @@
import org.gwt.mosaic.ui.client.layout.*;
import org.gwt.mosaic.ui.client.list.DefaultListModel;
import org.jboss.bpm.console.client.ApplicationContext;
+import org.jboss.bpm.console.client.common.DataDriven;
+import org.jboss.bpm.console.client.common.LoadingOverlay;
import org.jboss.bpm.console.client.common.PagingCallback;
import org.jboss.bpm.console.client.common.PagingPanel;
import org.jboss.bpm.console.client.model.TaskRef;
@@ -51,7 +54,7 @@
* @author Heiko.Braun <heiko.braun at jboss.com>
*/
@LoadTool(name = "Group Tasks", group = "Tasks", priority = 1, icon = "taskIcon")
-public class OpenTasksView extends AbstractTaskList implements WSComponent
+public class OpenTasksView extends AbstractTaskList implements WSComponent, DataDriven
{
public final static String ID = OpenTasksView.class.getName();
@@ -68,7 +71,25 @@
private Controller controller;
- @Override
+ private static boolean actionSetup = false;
+
+ public static void registerCommonActions(Controller controller)
+ {
+ if(!actionSetup)
+ {
+ // create and register actions
+ controller.addAction(LoadTasksAction.ID, new LoadTasksAction());
+ controller.addAction(LoadTasksParticipationAction.ID, new LoadTasksParticipationAction());
+ controller.addAction(ClaimTaskAction.ID, new ClaimTaskAction());
+ controller.addAction(ReleaseTaskAction.ID, new ReleaseTaskAction());
+ controller.addAction(UpdateDetailsAction.ID, new UpdateDetailsAction());
+ controller.addAction(AssignTaskAction.ID, new AssignTaskAction());
+ controller.addAction(ReloadAllTaskListsAction.ID, new ReloadAllTaskListsAction());
+
+ actionSetup = true;
+ }
+ }
+
public Widget getWidget()
{
panel = new MosaicPanel(new BorderLayout());
@@ -78,18 +99,10 @@
initialize();
+ registerCommonActions(controller);
+
// ----
- // create and register actions
- controller.addAction(LoadTasksAction.ID, new LoadTasksAction());
- controller.addAction(LoadTasksParticipationAction.ID, new LoadTasksParticipationAction());
- controller.addAction(ClaimTaskAction.ID, new ClaimTaskAction());
- controller.addAction(ReleaseTaskAction.ID, new ReleaseTaskAction());
- controller.addAction(UpdateDetailsAction.ID, new UpdateDetailsAction());
- controller.addAction(AssignTaskAction.ID, new AssignTaskAction());
- controller.addAction(ReloadAllTaskListsAction.ID, new ReloadAllTaskListsAction());
-
-
/*TaskDetailView assignedDetailView = new TaskDetailView(false);
controller.addView("AssignedDetailView", assignedDetailView);
assignedDetailView.initialize();
@@ -238,39 +251,68 @@
controller.addView("OpenDetailView", detailsView);
detailsView.initialize();
+ Timer t = new Timer()
+ {
+ @Override
+ public void run()
+ {
+ // force loading
+ controller.handleEvent(
+ new Event(LoadTasksParticipationAction.ID, getAssignedIdentity())
+ );
+ }
+ };
+
+ t.schedule(50);
+
isInitialized = true;
}
}
- public void update(String identity, List<TaskRef> tasks)
+
+ public void reset()
{
- this.identity = identity;
- this.cachedTasks = tasks;
+ final DefaultListModel<TaskRef> model =
+ (DefaultListModel<TaskRef>) listBox.getModel();
+
+ model.clear();
+
+ // clear details
+ controller.handleEvent(
+ new Event(UpdateDetailsAction.ID, new DetailViewEvent("OpenDetailView", null))
+ );
+ }
+
+ public void update(Object... data)
+ {
+ this.identity = (String)data[0];
+ this.cachedTasks = (List<TaskRef>)data[1];
pagingPanel.reset();
renderUpdate();
}
+ public void setLoading(boolean isLoading)
+ {
+ if(panel.isVisible())
+ LoadingOverlay.on(taskList, isLoading);
+ }
+
private void renderUpdate()
{
// lazy init
initialize();
+ reset();
+
final DefaultListModel<TaskRef> model =
(DefaultListModel<TaskRef>) listBox.getModel();
- model.clear();
-
List<TaskRef> trimmed = pagingPanel.trim(cachedTasks);
for(TaskRef task : trimmed)
{
if(TaskRef.STATE.OPEN ==task.getCurrentState())
model.add(task);
}
-
- // details
- controller.handleEvent(
- new Event(UpdateDetailsAction.ID, new DetailViewEvent("OpenDetailView", null))
- );
}
}
More information about the overlord-commits
mailing list