You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2012/11/16 19:07:21 UTC

svn commit: r1410519 - /isis/trunk/framework/viewer/wicket/wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java

Author: danhaywood
Date: Fri Nov 16 18:07:21 2012
New Revision: 1410519

URL: http://svn.apache.org/viewvc?rev=1410519&view=rev
Log:
ISIS-232: adding action name on collection results

Modified:
    isis/trunk/framework/viewer/wicket/wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java

Modified: isis/trunk/framework/viewer/wicket/wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java
URL: http://svn.apache.org/viewvc/isis/trunk/framework/viewer/wicket/wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java?rev=1410519&r1=1410518&r2=1410519&view=diff
==============================================================================
--- isis/trunk/framework/viewer/wicket/wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java (original)
+++ isis/trunk/framework/viewer/wicket/wicket-ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/actions/ActionPanel.java Fri Nov 16 18:07:21 2012
@@ -30,6 +30,7 @@ import org.apache.isis.core.metamodel.ad
 import org.apache.isis.core.metamodel.adapter.version.ConcurrencyException;
 import org.apache.isis.core.metamodel.facets.object.value.ValueFacet;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
+import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
 import org.apache.isis.runtimes.dflt.runtime.system.context.IsisContext;
 import org.apache.isis.viewer.wicket.model.common.SelectionHandler;
 import org.apache.isis.viewer.wicket.model.isis.PersistenceSessionProvider;
@@ -94,7 +95,7 @@ public class ActionPanel extends PanelAb
         getComponentFactoryRegistry().addOrReplaceComponent(this, ComponentType.PARAMETERS, getActionModel());
         getComponentFactoryRegistry().addOrReplaceComponent(this, ComponentType.ENTITY_ICON_AND_TITLE, new EntityModel(getActionModel().getTargetAdapter()));
 
-        final String actionName = actionModel.getActionMemento().getAction().getName();
+        final String actionName = getActionModel().getActionMemento().getAction().getName();
         addOrReplace(new Label(ID_ACTION_NAME, Model.of(actionName)));
     }
 
@@ -111,7 +112,7 @@ public class ActionPanel extends PanelAb
     public void executeActionAndProcessResults() {
 
         permanentlyHide(ComponentType.ENTITY_ICON_AND_TITLE);
-        permanentlyHide(ID_ACTION_NAME);
+        
 
         ObjectAdapter targetAdapter = null;
         try {
@@ -157,7 +158,6 @@ public class ActionPanel extends PanelAb
         OBJECT {
             @Override
             public void addResults(final ActionPanel actionPanel, final ObjectAdapter resultAdapter) {
-
                 final ObjectAdapter actualAdapter = determineActualAdapter(resultAdapter, actionPanel);
 
                 //actionPanel.set
@@ -183,6 +183,7 @@ public class ActionPanel extends PanelAb
             }
 
             private void addResultsAccordingToSingleResultsMode(final ActionPanel panel, final ObjectAdapter actualAdapter, ConcurrencyException exIfAny) {
+                panel.permanentlyHide(ID_ACTION_NAME);
                 final ActionModel actionModel = panel.getActionModel();
                 final ActionModel.SingleResultsMode singleResultsMode = actionModel.getSingleResultsMode();
 
@@ -221,11 +222,16 @@ public class ActionPanel extends PanelAb
         COLLECTION {
             @Override
             public void addResults(final ActionPanel panel, final ObjectAdapter resultAdapter) {
+                ObjectAction action = panel.getActionModel().getActionMemento().getAction();
+                panel.addOrReplace(new Label(ActionPanel.ID_ACTION_NAME, Model.of(action.getName())));
+                
                 panel.hideAllBut(ComponentType.COLLECTION_CONTENTS);
                 addOrReplaceCollectionResultsPanel(panel, resultAdapter);
             }
 
             private void addOrReplaceCollectionResultsPanel(final ActionPanel panel, final ObjectAdapter resultAdapter) {
+                
+                
                 final EntityCollectionModel collectionModel = EntityCollectionModel.createStandalone(resultAdapter);
                 final SelectionHandler selectionHandler = panel.getModel().getSelectionHandler();
                 if (selectionHandler != null) {
@@ -233,11 +239,13 @@ public class ActionPanel extends PanelAb
                 }
                 final ComponentFactoryRegistry componentFactoryRegistry = panel.getComponentFactoryRegistry();
                 componentFactoryRegistry.addOrReplaceComponent(panel, ComponentType.COLLECTION_CONTENTS, collectionModel);
+
             }
         },
         EMPTY {
             @Override
             public void addResults(final ActionPanel panel, final ObjectAdapter resultAdapter) {
+                panel.permanentlyHide(ID_ACTION_NAME);
                 panel.hideAllBut(ComponentType.EMPTY_COLLECTION);
                 final ActionModel actionModel = panel.getActionModel();
                 panel.getComponentFactoryRegistry().addOrReplaceComponent(panel, ComponentType.EMPTY_COLLECTION, actionModel);
@@ -246,6 +254,7 @@ public class ActionPanel extends PanelAb
         VALUE {
             @Override
             public void addResults(final ActionPanel panel, final ObjectAdapter resultAdapter) {
+                panel.permanentlyHide(ID_ACTION_NAME);
                 panel.hideAllBut(ComponentType.VALUE);
                 panel.getComponentFactoryRegistry().addOrReplaceComponent(panel, ComponentType.VALUE, new ValueModel(resultAdapter));
             }
@@ -253,6 +262,7 @@ public class ActionPanel extends PanelAb
         VOID {
             @Override
             public void addResults(final ActionPanel panel, final ObjectAdapter resultAdapter) {
+                panel.permanentlyHide(ID_ACTION_NAME);
                 panel.hideAllBut(ComponentType.VOID_RETURN);
                 panel.getComponentFactoryRegistry().addOrReplaceComponent(panel, ComponentType.VOID_RETURN, null);
             }