modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleSummaryStep.java | 36 +- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleView.java | 153 ++++++++++ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java | 16 + modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java | 5 4 files changed, 191 insertions(+), 19 deletions(-)
New commits: commit f587e2c89652e7445eba5debeaba33f8a12d0900 Author: John Mazzitelli mazz@redhat.com Date: Wed Mar 24 17:35:40 2010 -0400
add start of the "bundle" view at the bottom of bundle list
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleSummaryStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleSummaryStep.java index a0c565b..45002c1 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleSummaryStep.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleSummaryStep.java @@ -18,9 +18,9 @@ */ package org.rhq.enterprise.gui.coregui.client.bundle.create;
-import com.google.gwt.user.client.ui.HasHorizontalAlignment; -import com.google.gwt.user.client.ui.Label; +import com.smartgwt.client.types.Alignment; import com.smartgwt.client.widgets.Canvas; +import com.smartgwt.client.widgets.Label; import com.smartgwt.client.widgets.layout.HLayout; import com.smartgwt.client.widgets.layout.LayoutSpacer; import com.smartgwt.client.widgets.layout.VLayout; @@ -50,11 +50,11 @@ public class BundleSummaryStep implements WizardStep { bundleTypeBox.setExtraSpace(10); Label bundleTypeLabel = new Label("Type:"); bundleTypeLabel.setWidth("10%"); - bundleTypeLabel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); - bundleTypeLabel.setWordWrap(false); + bundleTypeLabel.setAlign(Alignment.LEFT); + bundleTypeLabel.setWrap(false); Label bundleTypeValue = new Label(wizard.getBundleType().getName()); bundleTypeValue.setWidth("90%"); - bundleTypeValue.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); + bundleTypeValue.setAlign(Alignment.LEFT); bundleTypeBox.addMember(bundleTypeLabel); bundleTypeBox.addMember(bundleTypeValue); top.addMember(bundleTypeBox); @@ -64,11 +64,11 @@ public class BundleSummaryStep implements WizardStep { nameBox.setExtraSpace(10); Label nameLabel = new Label("Name:"); nameLabel.setWidth("10%"); - nameLabel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); - nameLabel.setWordWrap(false); + nameLabel.setAlign(Alignment.LEFT); + nameLabel.setWrap(false); Label nameValue = new Label(wizard.getBundleName()); nameValue.setWidth("90%"); - nameValue.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); + nameValue.setAlign(Alignment.LEFT); nameBox.addMember(nameLabel); nameBox.addMember(nameValue); top.addMember(nameBox); @@ -79,11 +79,11 @@ public class BundleSummaryStep implements WizardStep { versionBox.setExtraSpace(10); Label versionLabel = new Label("Version:"); versionLabel.setWidth("10%"); - versionLabel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); - versionLabel.setWordWrap(false); + versionLabel.setAlign(Alignment.LEFT); + versionLabel.setWrap(false); Label versionValue = new Label(wizard.getBundleVersionString()); versionValue.setWidth("90%"); - versionValue.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); + versionValue.setAlign(Alignment.LEFT); versionBox.addMember(versionLabel); versionBox.addMember(versionValue); top.addMember(versionBox); @@ -94,11 +94,11 @@ public class BundleSummaryStep implements WizardStep { descriptionBox.setExtraSpace(10); Label descriptionLabel = new Label("Description:"); descriptionLabel.setWidth("10%"); - descriptionLabel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); - descriptionLabel.setWordWrap(false); + descriptionLabel.setAlign(Alignment.LEFT); + descriptionLabel.setWrap(false); Label descriptionValue = new Label(wizard.getBundleDescription()); descriptionValue.setWidth("90%"); - descriptionValue.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); + descriptionValue.setAlign(Alignment.LEFT); descriptionBox.addMember(descriptionLabel); descriptionBox.addMember(descriptionValue); top.addMember(descriptionBox); @@ -109,15 +109,15 @@ public class BundleSummaryStep implements WizardStep { filesBox.setExtraSpace(10); Label filesLabel = new Label("Files:"); filesLabel.setWidth("10%"); - filesLabel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); - filesLabel.setWordWrap(false); + filesLabel.setAlign(Alignment.LEFT); + filesLabel.setWrap(false); VLayout filesValues = new VLayout(); filesValues.setWidth("90%"); filesValues.setAutoHeight(); for (String filename : wizard.getAllBundleFilesStatus().keySet()) { Label fileNameValue = new Label(filename); - fileNameValue.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT); - fileNameValue.setWordWrap(false); + fileNameValue.setAlign(Alignment.LEFT); + fileNameValue.setWrap(false); filesValues.addMember(fileNameValue); } filesBox.addMember(filesLabel); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleView.java new file mode 100644 index 0000000..7a483e6 --- /dev/null +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundleView.java @@ -0,0 +1,153 @@ +/* + * RHQ Management Platform + * Copyright (C) 2005-2010 Red Hat, Inc. + * All rights reserved. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ +package org.rhq.enterprise.gui.coregui.client.bundle.list; + +import com.smartgwt.client.data.Record; +import com.smartgwt.client.types.Alignment; +import com.smartgwt.client.types.Overflow; +import com.smartgwt.client.widgets.Canvas; +import com.smartgwt.client.widgets.Label; +import com.smartgwt.client.widgets.layout.HLayout; +import com.smartgwt.client.widgets.layout.LayoutSpacer; +import com.smartgwt.client.widgets.layout.VLayout; +import com.smartgwt.client.widgets.tab.Tab; +import com.smartgwt.client.widgets.tab.TabSet; + +import org.rhq.core.domain.bundle.composite.BundleWithLatestVersionComposite; +import org.rhq.enterprise.gui.coregui.client.CoreGUI; +import org.rhq.enterprise.gui.coregui.client.components.HeaderLabel; + +public class BundleView extends VLayout { + + private int bundleBeingViewed = 0; + private Label message = new Label("Select a bundle..."); + private VLayout canvas; + private HeaderLabel headerLabel; + private Label descriptionValue; + private Label latestVersionValue; + + public BundleView() { + super(); + setPadding(10); + setOverflow(Overflow.AUTO); + } + + @Override + protected void onInit() { + super.onInit(); + addMember(message); + addMember(buildCanvas()); + canvas.hide(); + } + + private Canvas buildCanvas() { + canvas = new VLayout(); + + headerLabel = new HeaderLabel("<bundle name>"); + + TabSet tabs = new TabSet(); + Tab summaryTab = createSummaryTab(); + tabs.addTab(summaryTab); + + Tab versionsTab = createVersionsTab(); + tabs.addTab(versionsTab); + + Tab deploymentsTab = createDeploymentsTab(); + tabs.addTab(deploymentsTab); + + canvas.addMember(headerLabel); + canvas.addMember(tabs); + return canvas; + } + + private Tab createDeploymentsTab() { + return new Tab("Deployments"); + } + + private Tab createVersionsTab() { + return new Tab("Versions"); + } + + private Tab createSummaryTab() { + Tab summaryTab = new Tab("Summary"); + + VLayout top = new VLayout(); + top.setAutoHeight(); + top.setPadding(20); + top.setWidth100(); + + HLayout descriptionBox = new HLayout(); + descriptionBox.setWidth100(); + descriptionBox.setExtraSpace(10); + Label descriptionLabel = new Label("Description:"); + descriptionLabel.setWidth("10%"); + descriptionLabel.setAlign(Alignment.LEFT); + descriptionLabel.setWrap(false); + descriptionValue = new Label(""); + descriptionValue.setWidth("90%"); + descriptionValue.setAlign(Alignment.LEFT); + descriptionBox.addMember(descriptionLabel); + descriptionBox.addMember(descriptionValue); + top.addMember(descriptionBox); + top.addMember(new LayoutSpacer()); + + HLayout versionBox = new HLayout(); + versionBox.setWidth100(); + versionBox.setExtraSpace(10); + Label versionLabel = new Label("Latest Version:"); + versionLabel.setWidth("10%"); + versionLabel.setAlign(Alignment.LEFT); + versionLabel.setWrap(false); + latestVersionValue = new Label(""); + latestVersionValue.setWidth("90%"); + latestVersionValue.setAlign(Alignment.LEFT); + versionBox.addMember(versionLabel); + versionBox.addMember(latestVersionValue); + top.addMember(versionBox); + top.addMember(new LayoutSpacer()); + + summaryTab.setPane(top); + return summaryTab; + } + + public void viewRecord(Record record) { + final BundleWithLatestVersionComposite object; + object = (BundleWithLatestVersionComposite) record.getAttributeAsObject("object"); + + if (bundleBeingViewed != object.getBundleId()) { + headerLabel.setContents(object.getBundleName()); + latestVersionValue.setContents(object.getLatestVersion()); + descriptionValue.setContents(object.getBundleDescription()); + } + + try { + message.hide(); + canvas.show(); + markForRedraw(); + } catch (Throwable t) { + CoreGUI.getErrorHandler().handleError("Cannot view bundle record", t); + } + } + + public void viewNone() { + message.show(); + canvas.hide(); + markForRedraw(); + } +} diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java index e3c4c0f..21b04bf 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java @@ -19,9 +19,12 @@ package org.rhq.enterprise.gui.coregui.client.bundle.list;
import com.google.gwt.user.client.rpc.AsyncCallback; +import com.smartgwt.client.types.Overflow; import com.smartgwt.client.types.SelectionAppearance; import com.smartgwt.client.types.SelectionStyle; import com.smartgwt.client.widgets.grid.ListGridRecord; +import com.smartgwt.client.widgets.grid.events.RecordClickEvent; +import com.smartgwt.client.widgets.grid.events.RecordClickHandler; import com.smartgwt.client.widgets.layout.VLayout;
import org.rhq.core.domain.bundle.Bundle; @@ -51,6 +54,9 @@ public class BundlesListView extends VLayout { super.onDraw();
final Table table = new Table("Bundles"); + table.setHeight("50%"); + table.setShowResizeBar(true); + table.setResizeBarTarget("next");
table.setDataSource(new BundlesWithLatestVersionDataSource());
@@ -147,5 +153,15 @@ public class BundlesListView extends VLayout { });
addMember(table); + + final BundleView bundleView = new BundleView(); + bundleView.setOverflow(Overflow.AUTO); + addMember(bundleView); + + table.getListGrid().addRecordClickHandler(new RecordClickHandler() { + public void onRecordClick(RecordClickEvent event) { + bundleView.viewRecord(event.getRecord()); + } + }); } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java index d67e38d..a0c6add 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java @@ -78,6 +78,9 @@ public class BundleFileUploadForm extends DynamicCallbackForm { HiddenItem nameField = new HiddenItem("name"); nameField.setValue(this.name);
+ HiddenItem versionField = new HiddenItem("version"); + versionField.setValue("1.0"); + setNumCols(4);
bundleUploadItem = new UploadItem("bundleFile", name); @@ -108,7 +111,7 @@ public class BundleFileUploadForm extends DynamicCallbackForm { uploadButton.setIcons(loadingIcon); uploadButton.setShowIcons(false);
- setItems(sessionIdField, bundleVersionIdField, nameField, bundleUploadItem, uploadButton); + setItems(sessionIdField, bundleVersionIdField, nameField, versionField, bundleUploadItem, uploadButton); }
/**
rhq-commits@lists.fedorahosted.org