ISIS-537: now adds additional links to property member group (though have disabled again until fix layout issues and add facet to allow more fine-grained placement).
Project: http://git-wip-us.apache.org/repos/asf/isis/repo Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/d099b31f Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/d099b31f Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/d099b31f Branch: refs/heads/master Commit: d099b31f52e13c259a5be7abf281b075b49ad467 Parents: 803159f Author: Dan Haywood <[email protected]> Authored: Tue Nov 25 08:15:59 2014 +0000 Committer: Dan Haywood <[email protected]> Committed: Tue Nov 25 08:15:59 2014 +0000 ---------------------------------------------------------------------- .../entity/properties/EntityPropertiesForm.java | 24 +++++++++++++------- .../properties/EntityPropertiesPanel.html | 15 +++++++++--- 2 files changed, 28 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/isis/blob/d099b31f/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java ---------------------------------------------------------------------- diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java index c666314..fa6250d 100644 --- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java +++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesForm.java @@ -73,6 +73,7 @@ import org.apache.isis.viewer.wicket.model.models.ActionPromptProvider; import org.apache.isis.viewer.wicket.model.models.EntityModel; import org.apache.isis.viewer.wicket.model.models.ScalarModel; import org.apache.isis.viewer.wicket.ui.ComponentType; +import org.apache.isis.viewer.wicket.ui.components.additionallinks.AdditionalLinksPanel; import org.apache.isis.viewer.wicket.ui.components.additionallinks.EntityActionUtil; import org.apache.isis.viewer.wicket.ui.components.widgets.containers.UiHintPathSignificantWebMarkupContainer; import org.apache.isis.viewer.wicket.ui.components.widgets.formcomponent.CancelHintRequired; @@ -216,7 +217,8 @@ public class EntityPropertiesForm extends FormAbstract<ObjectAdapter> implements Map<String, List<ObjectAssociation>> associationsByGroup = ObjectAssociation.Util.groupByMemberOrderName(associations); final List<String> groupNames = ObjectSpecifications.orderByMemberGroups(objSpec, associationsByGroup.keySet(), hint); - + + for(String groupName: groupNames) { final List<ObjectAssociation> associationsInGroup = associationsByGroup.get(groupName); if(associationsInGroup==null) { @@ -227,6 +229,8 @@ public class EntityPropertiesForm extends FormAbstract<ObjectAdapter> implements memberGroupRv.add(memberGroupRvContainer); memberGroupRvContainer.add(new Label(ID_MEMBER_GROUP_NAME, groupName)); + final List<LinkAndLabel> memberGroupActions = Lists.newArrayList(); + final RepeatingView propertyRv = new RepeatingView(ID_PROPERTIES); memberGroupRvContainer.add(propertyRv); @@ -235,8 +239,14 @@ public class EntityPropertiesForm extends FormAbstract<ObjectAdapter> implements for (final ObjectAssociation association : associationsInGroup) { final WebMarkupContainer propertyRvContainer = new UiHintPathSignificantWebMarkupContainer(propertyRv.newChildId()); propertyRv.add(propertyRvContainer); - addPropertyToForm(entityModel, association, propertyRvContainer); + + addPropertyToForm(entityModel, (OneToOneAssociation) association, propertyRvContainer, memberGroupActions); } + + // TODO: suppressing until sort out markup and figure out which should contribute etc via Facets. + memberGroupActions.clear(); + AdditionalLinksPanel.addAdditionalLinks( + memberGroupRvContainer, "additionalLinks", memberGroupActions); } addClassForSpan(markupContainer, span); @@ -248,12 +258,10 @@ public class EntityPropertiesForm extends FormAbstract<ObjectAdapter> implements private void addPropertyToForm( final EntityModel entityModel, - final ObjectAssociation association, - final WebMarkupContainer container) { - - final List<LinkAndLabel> entityActions = Lists.newArrayList(); - - final OneToOneAssociation otoa = (OneToOneAssociation) association; + final OneToOneAssociation association, + final WebMarkupContainer container, + final List<LinkAndLabel> entityActions) { + final OneToOneAssociation otoa = association; final PropertyMemento pm = new PropertyMemento(otoa); final ScalarModel scalarModel = entityModel.getPropertyModel(pm); http://git-wip-us.apache.org/repos/asf/isis/blob/d099b31f/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html ---------------------------------------------------------------------- diff --git a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html index b909597..1de3d99 100644 --- a/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html +++ b/component/viewer/wicket/ui/src/main/java/org/apache/isis/viewer/wicket/ui/components/entity/properties/EntityPropertiesPanel.html @@ -29,10 +29,9 @@ <div class="panel panel-default"> <div class="panel-heading"> <span wicket:id="memberGroupName" class="panel-title">[group name]</span> - <div class="additionalLinks pull-right"> <div class="btn-group"> - <div xxwicket:id="additionalLinks"></div> + <div wicket:id="additionalLinks"></div> </div> </div> </div> @@ -58,7 +57,12 @@ <fieldset wicket:id="memberGroup" class="memberGroup myBlockContainer"> <div class="panel panel-default"> <div class="panel-heading"> - <div class="panel-title" wicket:id="memberGroupName" >[group name]</div> + <span wicket:id="memberGroupName" class="panel-title">[group name]</span> + <div class="additionalLinks pull-right"> + <div class="btn-group"> + <div wicket:id="additionalLinks"></div> + </div> + </div> </div> <div class="properties panel-body"> <div wicket:id="properties"> @@ -75,6 +79,11 @@ <div class="panel panel-default"> <div class="panel-heading"> <div class="panel-title" wicket:id="memberGroupName" >[group name]</div> + <div class="additionalLinks pull-right"> + <div class="btn-group"> + <div wicket:id="additionalLinks"></div> + </div> + </div> </div> <div class="properties panel-body"> <div wicket:id="properties">
