diff --git a/.classpath b/.classpath index 1507576..33d28ae 100644 --- a/.classpath +++ b/.classpath @@ -1,6 +1,6 @@ - + @@ -30,5 +30,5 @@ - + diff --git a/.settings/com.google.gdt.eclipse.core.prefs b/.settings/com.google.gdt.eclipse.core.prefs index c8ef83a..f49ef27 100644 --- a/.settings/com.google.gdt.eclipse.core.prefs +++ b/.settings/com.google.gdt.eclipse.core.prefs @@ -1,6 +1,6 @@ -#Wed Feb 06 12:30:01 CET 2013 +#Tue Feb 26 17:29:33 CET 2013 eclipse.preferences.version=1 jarsExcludedFromWebInfLib= -lastWarOutDir=/Users/massi/Documents/workspace/reports/target/reports-4.0.0-SNAPSHOT +lastWarOutDir=/Users/massi/Documents/workspace/reports/target/reports-4.0.1-SNAPSHOT warSrcDir=src/main/webapp warSrcDirIsOutput=false diff --git a/pom.xml b/pom.xml index ce889e1..a1113ef 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,5 @@ - + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 @@ -13,7 +12,7 @@ org.gcube.portlets.user reports war - 4.0.0-SNAPSHOT + 4.0.1-SNAPSHOT gCube Reports Portlet gCube Reports Portlet. @@ -118,7 +117,7 @@ csv4j 1.2.0-SNAPSHOT ${setScope} - + org.gcube.portlets.user workspace-light-tree @@ -149,6 +148,11 @@ [6.0.0-SNAPSHOT, 7.0.0-SNAPSHOT) ${setScope} + + org.gcube.portlets.user + opengcubeapplication + [1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT) + org.gcube.portlets.user home-library diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java index 4772ba9..bd2ae55 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Headerbar.java @@ -39,8 +39,6 @@ import com.google.gwt.user.client.ui.RichTextArea; * Headerbar class is the top bar component of the UI * * @author Massimiliano Assante, ISTI-CNR - massimiliano.assante@isti.cnr.it - * - * @version July 2011 (3.0) */ public class Headerbar extends Composite{ diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java index 8dce954..c2a7330 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/Presenter/Presenter.java @@ -1000,7 +1000,7 @@ public class Presenter { GWT.log("Reading TABLE rows: " + gt.getRowsNo() + " cols: " + gt.getCols()); wp.addComponentToLayout(gt, component.isDoubleColLayout()); break; - case ATTRIBUTE: + case ATTRIBUTE_MULTI: AttributeArea at = (AttributeArea) component.getContent(); wp.addComponentToLayout(at, component.isDoubleColLayout()); setCurrCursorPos(uiY); diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/WorkspacePanel.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/WorkspacePanel.java index 7e922ad..d08ccd0 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/WorkspacePanel.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/WorkspacePanel.java @@ -15,7 +15,6 @@ import com.google.gwt.user.client.ui.Widget; * WorkspacePanel class is the UI Component for displaying the template * * @author Massimiliano Assante, ISTI-CNR - massimiliano.assante@isti.cnr.it - * @version October 2008 (0.2) */ public class WorkspacePanel extends Composite { @@ -65,7 +64,7 @@ public class WorkspacePanel extends Composite { presenter = c; templateModel = presenter.getModel(); - mainLayout.setSize(""+(templateModel.getPageWidth()), ""+templateModel.getPageHeight()); + mainLayout.setWidth(""+(templateModel.getPageWidth())); mainLayout.setStyleName("wpFlow"); @@ -123,7 +122,7 @@ public class WorkspacePanel extends Composite { * @param height . */ public void resizeWorkspace(int width, int height) { - mainLayout.setPixelSize(width, height); + mainLayout.setWidth(""+width); } /** diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/CommentDialog.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/CommentDialog.java index 3ab5386..30ecde0 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/CommentDialog.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/CommentDialog.java @@ -41,7 +41,7 @@ public class CommentDialog extends DialogBox { setSize(PANEL_WIDTH+"px", "100px"); header.setPixelSize(PANEL_WIDTH, 15); final Image enterImage = new Image(ImageConstants.IMAGE_ARROW_ENTER); - final Image closeImage = new Image(images.close()); + final Image closeImage = new Image(ImageConstants.IMAGE_CLOSE); final Image binImage = new Image(ImageConstants.IMAGE_BIN); closeImage.setStyleName("selectable"); binImage.setStyleName("selectable"); diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/FimesReportTreePanel.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/FimesReportTreePanel.java index 693f27d..cae3fa4 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/FimesReportTreePanel.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/dialog/FimesReportTreePanel.java @@ -127,7 +127,7 @@ public class FimesReportTreePanel extends ScrollPanel{ node = createNodeWidget(image, "Table","gwt-label-componentTree"); break; } - case ATTRIBUTE: { + case ATTRIBUTE_MULTI: { // TODO ImageResource image = FimesReportTreeStructureResources.INSTANCE.comments(); node = createNodeWidget(image, "Attribute","gwt-label-componentTree"); diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateComponent.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateComponent.java index 1ecf3b8..17f4aaa 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateComponent.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateComponent.java @@ -258,7 +258,7 @@ public class TemplateComponent { GenericTable table = new GenericTable(st, presenter, sc.getX(), sc.getY(), TemplateModel.TEMPLATE_WIDTH - 50, 200); this.content = table; break; - case ATTRIBUTE: + case ATTRIBUTE_MULTI: AttributeArea ta = null; if (sc.getPossibleContent() instanceof SerializableAttributeArea) { SerializableAttributeArea sata = (SerializableAttributeArea) sc.getPossibleContent(); @@ -395,7 +395,7 @@ public class TemplateComponent { SerializableTable st = gt.getSerializable(); content = st; break; - case ATTRIBUTE: + case ATTRIBUTE_MULTI: AttributeArea att = (AttributeArea) this.content; ArrayList values = new ArrayList(); for (CheckBox box : att.getBoxes()) { diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateModel.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateModel.java index 03bf588..f17dcae 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateModel.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/model/TemplateModel.java @@ -45,10 +45,7 @@ public class TemplateModel { * */ public static final int TEMPLATE_WIDTH = 750; - /** - * TEMPLATE_HEIGHT - */ - public static final int TEMPLATE_HEIGHT= 1000; + /** * DEFAULT_NAME */ @@ -142,7 +139,7 @@ public class TemplateModel { super(); this.templateName = DEFAULT_NAME; this.pageWidth = TEMPLATE_WIDTH; - this.pageHeight = TEMPLATE_HEIGHT; + this.pageHeight = -1; this.currentPage = 1; this.totalPages = 1; this.marginLeft = 25; diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/AttributeArea.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/AttributeArea.java index 4479598..aba7bee 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/AttributeArea.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/AttributeArea.java @@ -121,7 +121,7 @@ public class AttributeArea extends Composite { * @return */ public ComponentType getType() { - return ComponentType.ATTRIBUTE; + return ComponentType.ATTRIBUTE_MULTI; } /** * diff --git a/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/RepeatableSequence.java b/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/RepeatableSequence.java index e33fff9..972a3cf 100644 --- a/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/RepeatableSequence.java +++ b/src/main/java/org/gcube/portlets/user/reportgenerator/client/targets/RepeatableSequence.java @@ -2,69 +2,79 @@ package org.gcube.portlets.user.reportgenerator.client.targets; import java.util.ArrayList; -import org.gcube.portlets.d4sreporting.common.client.uicomponents.ReportUIComponent; import org.gcube.portlets.d4sreporting.common.shared.ComponentType; import org.gcube.portlets.d4sreporting.common.shared.SerializableComponent; import org.gcube.portlets.d4sreporting.common.shared.SerializableRepeatableSequence; import org.gcube.portlets.user.reportgenerator.client.Presenter.Presenter; import org.gcube.portlets.user.reportgenerator.client.model.TemplateComponent; -import org.gcube.portlets.user.reportgenerator.client.model.TemplateModel; import com.google.gwt.core.client.GWT; +import com.google.gwt.dom.client.Style.Unit; +import com.google.gwt.event.dom.client.ClickEvent; +import com.google.gwt.event.dom.client.ClickHandler; +import com.google.gwt.user.client.Window; +import com.google.gwt.user.client.ui.Button; +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.HasAlignment; +import com.google.gwt.user.client.ui.HorizontalPanel; import com.google.gwt.user.client.ui.VerticalPanel; -public class RepeatableSequence extends ReportUIComponent { +public class RepeatableSequence extends Composite { private ArrayList groupedComponents = new ArrayList(); - VerticalPanel myPanel; - Presenter p; + private VerticalPanel myPanel; + private HorizontalPanel buttonPanel = new HorizontalPanel(); + private Presenter p; + private Button addAnotherB = new Button("Add another entry"); - /** * constructor used by the system when reading the model * @param sRS */ public RepeatableSequence(Presenter p, SerializableRepeatableSequence sRS) { - super(ComponentType.REPEAT_SEQUENCE, 0, 0, TemplateModel.TEMPLATE_WIDTH - 50, sRS.getHeight()); this.p = p; - myPanel = getResizablePanel(); - + addAnotherB.getElement().getStyle().setMargin(10, Unit.PX); + addAnotherB.getElement().getStyle().setHeight(30, Unit.PX); + addAnotherB.getElement().getStyle().setWidth(200, Unit.PX); + myPanel = new VerticalPanel(); + myPanel.setHorizontalAlignment(HasAlignment.ALIGN_LEFT); int size = sRS.getGroupedComponents().size(); for (int j = 0; j < size; j++) { SerializableComponent sComp = sRS.getGroupedComponents().get(j); + if (j == size-1) { + myPanel.add(buttonPanel); //add the button before the last element + buttonPanel.setWidth("100%"); + buttonPanel.setHorizontalAlignment(HasAlignment.ALIGN_RIGHT); + buttonPanel.add(addAnotherB); + } add(new TemplateComponent(p.getModel(), sComp, p)); } + initWidget(myPanel); + + addAnotherB.addClickHandler(new ClickHandler() { + + @Override + public void onClick(ClickEvent event) { + Window.alert("TODO: Missing Implementation"); + + } + }); } public void add(TemplateComponent toAdd) { - groupedComponents.add(toAdd); - GWT.log("toAdd.getContent()= NULL? " + (toAdd.getContent() == null)); - GWT.log("ToAdd= getType " + toAdd.getType()); - myPanel.add(toAdd.getContent()); + if (toAdd.getType() != ComponentType.REPEAT_SEQUENCE_INNER) { + groupedComponents.add(toAdd); + GWT.log("ToAdd= getType " + toAdd.getType()); + myPanel.add(toAdd.getContent()); + } } - + public ArrayList getGroupedComponents() { return groupedComponents; } public void setGroupedComponents(ArrayList groupedComponents) { this.groupedComponents = groupedComponents; - } - - public int getHeight() { - return super.mainPanel.getOffsetHeight(); - } - - @Override - public void removeTemplateComponent(ReportUIComponent toRemove) { - // TODO Auto-generated method stub - - } - - @Override - public void lockComponent(ReportUIComponent toLock, boolean locked) { - // TODO Auto-generated method stub - - } + } } diff --git a/src/main/webapp/ReportGenerator.css b/src/main/webapp/ReportGenerator.css index 2402e2c..7490a73 100644 --- a/src/main/webapp/ReportGenerator.css +++ b/src/main/webapp/ReportGenerator.css @@ -1,3 +1,5 @@ +@import url('reports/old-dialog.css'); + .grouping-inner { background: url('images/grouping-border.png') repeat-x; display: block; @@ -66,11 +68,12 @@ tableBorder td { .wpFlow { margin: 10px 5px 5px 20px; border: 1px solid #e3e8f3; - padding-left: 44px; + padding: 0px 0px 25px 44px; background-color: #e3e8f3; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; + width: 750px; } .highlight_background {