[jbpm-commits] JBoss JBPM SVN: r2907 - in projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client: process and 1 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Nov 13 08:00:35 EST 2008


Author: heiko.braun at jboss.com
Date: 2008-11-13 08:00:35 -0500 (Thu, 13 Nov 2008)
New Revision: 2907

Modified:
   projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/URLBuilder.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/widgets/TokenEditor.java
   projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenForm.java
Log:
Properly reset ProcessInstanceListEditor and sub components

Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/URLBuilder.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/URLBuilder.java	2008-11-13 12:59:48 UTC (rev 2906)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/URLBuilder.java	2008-11-13 13:00:35 UTC (rev 2907)
@@ -131,9 +131,14 @@
       return getBaseUrl() + "/rs/tasks/"+id+"/assignment/"+URL.encode(actualActor);
    }
 
+   public String getTokenSignalUrl(TokenReference tok)
+   {
+      return getBaseUrl() + "/rs/jbpm3/tokens/"+tok.getId()+"/transition/default";      
+   }
+
    public String getTokenSignalUrl(TokenReference tok, String signal)
    {
       String encodedSignal = URL.encode(signal);
-      return getBaseUrl() + "/rs/jbpm3/tokens/"+tok.getId()+"?signal="+encodedSignal;      
+      return getBaseUrl() + "/rs/jbpm3/tokens/"+tok.getId()+"/transition?signal="+encodedSignal;      
    }
 }

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-13 12:59:48 UTC (rev 2906)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/process/ProcessInstanceListEditor.java	2008-11-13 13:00:35 UTC (rev 2907)
@@ -47,6 +47,7 @@
 import org.jboss.bpm.console.client.widgets.HelpPanel;
 import org.jboss.bpm.console.client.widgets.TeaserPanel;
 import org.jboss.bpm.console.client.widgets.TokenEditor;
+import org.jboss.bpm.console.client.widgets.TokenForm;
 
 /**
  * @author Heiko.Braun <heiko.braun at jboss.com>
@@ -59,9 +60,13 @@
    private ProcessDefinition parent;
    private ProcessInstanceList instanceList;
 
+   private FormPanel detailsForm;
    private Panel tokenEditorPanel;
    private ProcessInstance selectedInstance;
+   private TokenEditor currentTokenEditor;
 
+   private TabPanel tabPanel;
+   
    public ProcessInstanceListEditor(ProcessDefinition proc, MainView view)
    {
       super();
@@ -88,7 +93,7 @@
 
       // ---------------
 
-      TabPanel tabPanel = new TabPanel();
+      tabPanel = new TabPanel();
       tabPanel.setPaddings(10);
       tabPanel.setPlain(true);
       tabPanel.setActiveTab(0);
@@ -132,14 +137,22 @@
 
       // ---------------
 
-      final FormPanel detailsForm = createBaseFormPanel();
+      detailsForm = createBaseFormPanel();
 
       // ---------------
 
-      detailsForm.add(new TextField("Id", "instanceId", 230));
-      detailsForm.add(new TextField("Key", "key", 230));
-      detailsForm.add(new TextField("State", "state", 230));
-      detailsForm.add(new DateField("Start Date", "startDate", 230));
+      TextField idField = new TextField("Id", "instanceId", 230);
+      idField.setReadOnly(true);
+      detailsForm.add(idField);
+      TextField keyField = new TextField("Key", "key", 230);
+      keyField.setReadOnly(true);
+      detailsForm.add(keyField);
+      TextField stateField = new TextField("State", "state", 230);
+      stateField.setReadOnly(true);
+      detailsForm.add(stateField);
+      DateField startDateField = new DateField("Start Date", "startDate", 230);
+      startDateField.setReadOnly(true);
+      detailsForm.add(startDateField);
       //detailsForm.add(new DateField("End Date", "endDate", 230)); 
 
       final Button suspendButton = new Button("Suspend",
@@ -203,8 +216,9 @@
 
                   // token form update
                   tokenEditorPanel.clear();
+                  currentTokenEditor = new TokenEditor(selectedInstance, callback);
                   tokenEditorPanel.add(   // TODO: LRU caching (i.e. last 5)
-                        new TokenEditor(selectedInstance, callback)
+                        currentTokenEditor
                   );
                   tokenEditorPanel.doLayout();
                }
@@ -231,7 +245,11 @@
    
    private void remoteSignal(TokenReference tok, String signal)
    {
-      String url = view.getUrlBuilder().getTokenSignalUrl(tok, signal);
+
+      String url = signal.equals(TokenForm.DEFAULT_TRANSITION) ?
+            view.getUrlBuilder().getTokenSignalUrl(tok) :
+            view.getUrlBuilder().getTokenSignalUrl(tok, signal);
+      
       RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
 
       try
@@ -313,6 +331,16 @@
    {
       instanceList.reloadStore();
       selectedInstance = null;
+
+      detailsForm.getForm().reset();
+      
+      if(currentTokenEditor!=null)
+         currentTokenEditor.resetEditor();
+
+      tokenEditorPanel.clear();
+      tokenEditorPanel.doLayout();
+      
+      //tabPanel.setActiveTab(0);
    }
 }
 

Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenEditor.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenEditor.java	2008-11-13 12:59:48 UTC (rev 2906)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenEditor.java	2008-11-13 13:00:35 UTC (rev 2907)
@@ -77,6 +77,11 @@
       this.add(tokenForm, new ColumnLayoutData(0.7));
    }
 
+   public void resetEditor()
+   {
+      tokenForm.resetForm();
+   }
+
    class TokenTree extends TreePanel
    {
       private TokenSelectionCallback callback;

Modified: projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenForm.java
===================================================================
--- projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenForm.java	2008-11-13 12:59:48 UTC (rev 2906)
+++ projects/gwt-console/trunk/war/src/main/java/org/jboss/bpm/console/client/widgets/TokenForm.java	2008-11-13 13:00:35 UTC (rev 2907)
@@ -54,6 +54,7 @@
    ));
 
    private TokenReference lastSelectedToken;
+   public static final String DEFAULT_TRANSITION = "(Default transition)";
 
    public TokenForm(final TokenEditor.SignalCallback callback)
    {
@@ -107,12 +108,12 @@
          public void onClick(Button button, EventObject eventObject)
          {
             ComboBox cb = (ComboBox)tokenForm.getForm().findField("signal");
+                        
             String signalValue = cb.getValueAsString();
             if(signalValue.equals(""))
                MessageBox.alert("Please select a signal");
             else
                callback.onSignalToken(lastSelectedToken, signalValue);
-
          }
 
       };
@@ -172,8 +173,15 @@
 
    private MemoryProxy createMemoryProxy(List signals)
    {
+      if(signals.isEmpty())
+         signals.add(DEFAULT_TRANSITION);
       return new MemoryProxy(
             new Object[][]{ signals.toArray()}
       );
    }
+
+   public void resetForm()
+   {      
+      tokenForm.getForm().reset();
+   }
 }




More information about the jbpm-commits mailing list