modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java | 7 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java | 3 modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java | 40 ++- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/RadioGroupWithComponentsItem.java | 31 ++ modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java | 104 +++++----- modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java | 53 ++++- modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties | 9 modules/enterprise/gui/coregui/src/main/webapp/images/global/upload.png |binary modules/enterprise/gui/coregui/src/main/webapp/images/global/upload_Disabled.png |binary modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_green_16_Disabled.png |binary modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_grey_16_Disabled.png |binary modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_red_16_Disabled.png |binary 12 files changed, 168 insertions(+), 79 deletions(-)
New commits: commit 55fee749e142292c64870dae38cca0bc27ad321b Author: John Mazzitelli mazz@redhat.com Date: Tue Dec 14 23:02:45 2010 -0500
fixing more things to get the upload buttons to render appropriately
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java index 3a7f062..286e382 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java @@ -30,6 +30,8 @@ import com.smartgwt.client.widgets.form.fields.FormItem; import com.smartgwt.client.widgets.form.fields.FormItemIcon; import com.smartgwt.client.widgets.form.fields.HiddenItem; import com.smartgwt.client.widgets.form.fields.UploadItem; +import com.smartgwt.client.widgets.form.fields.events.ChangeEvent; +import com.smartgwt.client.widgets.form.fields.events.ChangeHandler; import com.smartgwt.client.widgets.form.fields.events.ClickEvent; import com.smartgwt.client.widgets.form.fields.events.ClickHandler;
@@ -185,9 +187,23 @@ public class FileUploadForm extends DynamicCallbackForm { onDrawItems.add(fileUploadItem);
if (showUploadButton) { - fileUploadItem.setEndRow(false); + // this intercepts an enable request and only allows it if there is a file selected + class EnableInterceptingButtonItem extends ButtonItem { + EnableInterceptingButtonItem(String name) { + super(name); + } + + @Override + public void enable() { + String selectedFile = fileUploadItem.getValueAsString(); + if (selectedFile != null && selectedFile.length() > 0) { + super.enable(); + } + } + }
- uploadButton = new ButtonItem(MSG.view_upload_upload()); + uploadButton = new EnableInterceptingButtonItem(MSG.view_upload_upload()); + uploadButton.setDisabled(true); uploadButton.setColSpan(1); uploadButton.setStartRow(false); uploadButton.setAutoFit(true); @@ -197,6 +213,15 @@ public class FileUploadForm extends DynamicCallbackForm { submitForm(); } }); + + fileUploadItem.setEndRow(false); + fileUploadItem.addChangeHandler(new ChangeHandler() { + @Override + public void onChange(ChangeEvent changeEvent) { + uploadButton.setDisabled(false); + } + }); + onDrawItems.add(uploadButton); }
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java index b147fe5..7bf4536 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java @@ -65,6 +65,7 @@ public class TextFileRetrieverForm extends DynamicCallbackForm { setNumCols(4);
textFile = new UploadItem("textFile", MSG.view_upload_prompt_2()); + textFile.setColSpan(1); textFile.setEndRow(false); textFile.setWrapTitle(false);
@@ -89,12 +90,15 @@ public class TextFileRetrieverForm extends DynamicCallbackForm { uploadButton.setDisabled(true);
textFile.addChangeHandler(new ChangeHandler() { + @Override public void onChange(ChangeEvent changeEvent) { uploadButton.setDisabled(false); + uploadButton.setShowIcons(false); } });
uploadButton.addClickHandler(new ClickHandler() { + @Override public void onClick(ClickEvent clickEvent) { String selectedFile = textFile.getValueAsString(); if (selectedFile != null && selectedFile.length() > 0) { @@ -103,6 +107,7 @@ public class TextFileRetrieverForm extends DynamicCallbackForm { submitForm(); } else { uploadButton.disable(); // no file selected, it shouldn't be able to be pressed + uploadButton.setShowIcons(false); } } }); @@ -125,18 +130,26 @@ public class TextFileRetrieverForm extends DynamicCallbackForm { */ public void retrievalStatus(boolean ok) { if (uploadButton != null) { - FormItemIcon loadedIcon = new FormItemIcon(); + String iconSrc; + Message msg; + if (ok) { - loadedIcon.setSrc(ImageManager.getAvailabilityIcon(Boolean.TRUE)); - CoreGUI.getMessageCenter().notify(new Message(MSG.view_upload_success(), Severity.Info)); + iconSrc = ImageManager.getAvailabilityIcon(Boolean.TRUE); + msg = new Message(MSG.view_upload_success(), Severity.Info); } else { - loadedIcon.setSrc(ImageManager.getAvailabilityIcon(Boolean.FALSE)); - CoreGUI.getMessageCenter().notify(new Message(MSG.view_upload_error_file(), Severity.Error)); + iconSrc = ImageManager.getAvailabilityIcon(Boolean.FALSE); + msg = new Message(MSG.view_upload_error_file(), Severity.Error); } + + FormItemIcon loadedIcon = new FormItemIcon(); + loadedIcon.setSrc(iconSrc); loadedIcon.setWidth(16); loadedIcon.setHeight(16); uploadButton.setIcons(loadedIcon); uploadButton.setShowIcons(true); + markForRedraw(); + + CoreGUI.getMessageCenter().notify(msg); } } }
commit 9d4870731c6229c1469074cd2a4042c7969097ef Author: John Mazzitelli mazz@redhat.com Date: Tue Dec 14 21:53:41 2010 -0500
this fixes a bunch of little things in the create wizard's first step. makes sure components are disabled/greyed out at the appropriate times and re-enabled at the appropriate times. also adds a upload icon to make it purdy
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java index e13b67e..bdc647a 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ImageManager.java @@ -24,6 +24,13 @@ public class ImageManager { public static final String IMAGES_DIR = "images/";
/** + * Returns a generic "upload" icon. + */ + public static String getUploadIcon() { + return "global/upload.png"; + } + + /** * Returns a generic edit icon. */ public static String getEditIcon() { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java index 15f1afa..32df859 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java @@ -25,8 +25,8 @@ import com.smartgwt.client.widgets.Canvas; import com.smartgwt.client.widgets.form.DynamicForm; import com.smartgwt.client.widgets.form.events.FormSubmitFailedEvent; import com.smartgwt.client.widgets.form.events.FormSubmitFailedHandler; +import com.smartgwt.client.widgets.form.fields.ButtonItem; import com.smartgwt.client.widgets.form.fields.CanvasItem; -import com.smartgwt.client.widgets.form.fields.LinkItem; import com.smartgwt.client.widgets.form.fields.TextAreaItem; import com.smartgwt.client.widgets.form.fields.TextItem; import com.smartgwt.client.widgets.form.fields.events.ClickEvent; @@ -36,6 +36,7 @@ import org.rhq.core.domain.bundle.BundleVersion; import org.rhq.core.domain.criteria.BundleVersionCriteria; import org.rhq.core.domain.util.PageList; import org.rhq.enterprise.gui.coregui.client.CoreGUI; +import org.rhq.enterprise.gui.coregui.client.ImageManager; import org.rhq.enterprise.gui.coregui.client.components.form.RadioGroupWithComponentsItem; import org.rhq.enterprise.gui.coregui.client.components.upload.BundleDistributionFileUploadForm; import org.rhq.enterprise.gui.coregui.client.components.upload.DynamicCallbackForm; @@ -160,9 +161,9 @@ public class BundleUploadDistroFileStep extends AbstractWizardStep { recipeForm.setMargin(Integer.valueOf(20)); recipeForm.setShowInlineErrors(false);
- final LinkItem showUpload = new LinkItem("recipeUploadLink"); - showUpload.setValue(MSG.view_bundle_createWizard_clickToUploadRecipe()); - showUpload.setShowTitle(false); + final ButtonItem showUpload = new ButtonItem("recipeUploadLink", MSG + .view_bundle_createWizard_clickToUploadRecipe()); + showUpload.setIcon(ImageManager.getUploadIcon());
final CanvasItem upload = new CanvasItem("recipeUploadCanvas"); upload.setShowTitle(false); @@ -173,8 +174,9 @@ public class BundleUploadDistroFileStep extends AbstractWizardStep {
showUpload.addClickHandler(new ClickHandler() { public void onClick(ClickEvent clickEvent) { - recipeForm.hideItem(showUpload.getName()); - recipeForm.showItem(upload.getName()); + showUpload.hide(); + upload.show(); + recipeForm.markForRedraw(); } });
@@ -190,8 +192,9 @@ public class BundleUploadDistroFileStep extends AbstractWizardStep { wizard.setRecipe(event.getResults()); recipe.setValue(event.getResults()); textFileRetrieverForm.retrievalStatus(true); - recipeForm.showItem(showUpload.getName()); - recipeForm.hideItem(upload.getName()); + showUpload.show(); + upload.hide(); + recipeForm.markForRedraw(); } });
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/RadioGroupWithComponentsItem.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/RadioGroupWithComponentsItem.java index 2fb9688..9412237 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/RadioGroupWithComponentsItem.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/RadioGroupWithComponentsItem.java @@ -28,6 +28,7 @@ import java.util.LinkedHashMap;
import com.smartgwt.client.widgets.Canvas; import com.smartgwt.client.widgets.form.DynamicForm; +import com.smartgwt.client.widgets.form.fields.ButtonItem; import com.smartgwt.client.widgets.form.fields.CanvasItem; import com.smartgwt.client.widgets.form.fields.FormItem; import com.smartgwt.client.widgets.form.fields.RadioGroupItem; @@ -119,16 +120,32 @@ public class RadioGroupWithComponentsItem extends CanvasItem { canvas.getItem(key).clearValue(); canvas.getItem(key).redraw(); } - if (value != null && value instanceof DynamicForm) { - if (!disabled.equals(value.isDisabled())) { - value.setDisabled(disabled); - for (FormItem item : ((DynamicForm) value).getFields()) { - item.clearValue(); - item.redraw(); + disableAllFormFields(value, disabled); + } + } + + private void disableAllFormFields(Canvas value, Boolean disabled) { + if (value != null && value instanceof DynamicForm) { + for (FormItem item : ((DynamicForm) value).getFields()) { + if (item instanceof CanvasItem) { + // recursively drill down in case this is a dynamic form inside a dynamic form + disableAllFormFields(((CanvasItem) item).getCanvas(), disabled); + } + + if (disabled) { + item.clearValue(); + item.redraw(); + if (item instanceof ButtonItem) { + item.disable(); + } + } else { + if (item instanceof ButtonItem) { + item.enable(); } - value.markForRedraw(); } } + value.setDisabled(disabled); + value.markForRedraw(); } } } diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java index ee1d1de..3a7f062 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java @@ -191,6 +191,7 @@ public class FileUploadForm extends DynamicCallbackForm { uploadButton.setColSpan(1); uploadButton.setStartRow(false); uploadButton.setAutoFit(true); + uploadButton.setIcon(ImageManager.getUploadIcon()); uploadButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent clickEvent) { submitForm(); diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java index 3eae1f8..b147fe5 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java @@ -66,8 +66,25 @@ public class TextFileRetrieverForm extends DynamicCallbackForm {
textFile = new UploadItem("textFile", MSG.view_upload_prompt_2()); textFile.setEndRow(false); + textFile.setWrapTitle(false);
- uploadButton = new ButtonItem("Upload"); + // this intercepts an enable request and only allows it if there is a file selected + class EnableInterceptingButtonItem extends ButtonItem { + EnableInterceptingButtonItem(String name) { + super(name); + } + + @Override + public void enable() { + String selectedFile = textFile.getValueAsString(); + if (selectedFile != null && selectedFile.length() > 0) { + super.enable(); + } + } + } + + uploadButton = new EnableInterceptingButtonItem(MSG.view_upload_upload()); + uploadButton.setIcon(ImageManager.getUploadIcon()); uploadButton.setStartRow(false); uploadButton.setDisabled(true);
@@ -79,9 +96,14 @@ public class TextFileRetrieverForm extends DynamicCallbackForm {
uploadButton.addClickHandler(new ClickHandler() { public void onClick(ClickEvent clickEvent) { - uploadButton.setShowIcons(true); - markForRedraw(); - submitForm(); + String selectedFile = textFile.getValueAsString(); + if (selectedFile != null && selectedFile.length() > 0) { + uploadButton.setShowIcons(true); + markForRedraw(); + submitForm(); + } else { + uploadButton.disable(); // no file selected, it shouldn't be able to be pressed + } } });
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties index dc736de..0654519 100644 --- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties +++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties @@ -989,7 +989,7 @@ view_bundle_createWizard_urlOption = URL view_bundle_createWizard_uploadOption = Upload view_bundle_createWizard_recipeOption = Recipe view_bundle_createWizard_provideBundleDistro = Provide a Bundle Distribution -view_bundle_createWizard_clickToUploadRecipe = Click to upload a recipe file +view_bundle_createWizard_clickToUploadRecipe = Click to load a recipe file view_bundle_createWizard_createFailure = Failed to create the bundle view_bundle_createWizard_createSuccessful = You have successfully created a bundle named [{0}] with a version of [{1}]
diff --git a/modules/enterprise/gui/coregui/src/main/webapp/images/global/upload.png b/modules/enterprise/gui/coregui/src/main/webapp/images/global/upload.png new file mode 100644 index 0000000..335a235 Binary files /dev/null and b/modules/enterprise/gui/coregui/src/main/webapp/images/global/upload.png differ diff --git a/modules/enterprise/gui/coregui/src/main/webapp/images/global/upload_Disabled.png b/modules/enterprise/gui/coregui/src/main/webapp/images/global/upload_Disabled.png new file mode 100644 index 0000000..dec31e9 Binary files /dev/null and b/modules/enterprise/gui/coregui/src/main/webapp/images/global/upload_Disabled.png differ
commit e81a2719637d4f30e113f92b40f6c5be5db94fe5 Author: John Mazzitelli mazz@redhat.com Date: Tue Dec 14 19:26:17 2010 -0500
short circuit when no bundle file/recipe is supplied
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java index d06ad6c..15f1afa 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java @@ -203,6 +203,13 @@ public class BundleUploadDistroFileStep extends AbstractWizardStep { private void processUrl() { String urlString = (String) this.urlTextItem.getValue();
+ if (urlString == null || urlString.trim().length() == 0) { + wizard.getView().showMessage(MSG.view_bundle_createWizard_enterUrl()); + wizard.setBundleVersion(null); + setButtonsDisableMode(false); + return; + } + BundleGWTServiceAsync bundleServer = GWTServiceLookup.getBundleService(); bundleServer.createBundleVersionViaURL(urlString, new AsyncCallback<BundleVersion>() { public void onSuccess(BundleVersion result) { @@ -257,7 +264,16 @@ public class BundleUploadDistroFileStep extends AbstractWizardStep { }
private void processRecipe() { - this.wizard.setRecipe((String) this.recipeForm.getItem("recipeText").getValue()); + String recipeString = (String) this.recipeForm.getItem("recipeText").getValue(); + + if (recipeString == null || recipeString.trim().length() == 0) { + wizard.getView().showMessage(MSG.view_bundle_createWizard_enterRecipe()); + wizard.setBundleVersion(null); + setButtonsDisableMode(false); + return; + } + + this.wizard.setRecipe(recipeString); BundleGWTServiceAsync bundleServer = GWTServiceLookup.getBundleService(); bundleServer.createBundleVersionViaRecipe(this.wizard.getRecipe(), new AsyncCallback<BundleVersion>() { public void onSuccess(BundleVersion result) { diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties index ab5d9c0..dc736de 100644 --- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties +++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties @@ -976,6 +976,8 @@ view_bundle_createWizard_cancelFailure = Failed to fully cancel the creation of view_bundle_createWizard_noBundleTypesSupported = No bundle types are supported - you must deploy a valid plugin that supports bundle deployments view_bundle_createWizard_noBundleTypesAvail = No bundle types are available view_bundle_createWizard_loadBundleFileFailure = Cannot obtain bundle file information from server +view_bundle_createWizard_enterUrl = Please enter a valid URL where the bundle distribution file can be downloaded from +view_bundle_createWizard_enterRecipe = Please supply a valid recipe view_bundle_createWizard_uploadInProgress = Upload is in progress... This can take several minutes for large files view_bundle_createWizard_uploadStepName = Upload Bundle Files view_bundle_createWizard_noAdditionalFilesNeeded = No additional files need to be uploaded for this bundle
commit 338008671aa986d0e67ada3ea1ce333fe5e7f484 Author: John Mazzitelli mazz@redhat.com Date: Tue Dec 14 19:17:17 2010 -0500
bz 616261 fix the broken icons
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java index e2ae778..ee1d1de 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java @@ -29,7 +29,6 @@ import com.smartgwt.client.widgets.form.fields.ButtonItem; import com.smartgwt.client.widgets.form.fields.FormItem; import com.smartgwt.client.widgets.form.fields.FormItemIcon; import com.smartgwt.client.widgets.form.fields.HiddenItem; -import com.smartgwt.client.widgets.form.fields.StaticTextItem; import com.smartgwt.client.widgets.form.fields.UploadItem; import com.smartgwt.client.widgets.form.fields.events.ClickEvent; import com.smartgwt.client.widgets.form.fields.events.ClickHandler; @@ -50,7 +49,6 @@ public class FileUploadForm extends DynamicCallbackForm {
private UploadItem fileUploadItem; private ButtonItem uploadButton; - private StaticTextItem icon;
private Boolean uploadResult; private String uploadError; @@ -148,18 +146,23 @@ public class FileUploadForm extends DynamicCallbackForm { Object value = fileUploadItem.getValue(); if (value == null || value.toString().length() == 0) { String message = MSG.view_upload_prompt_1(name); - icon.setIcons(iconRed); - icon.setTooltip(message); + changeIcon(iconRed, message); setUploadError(message); // note - don't even submit this definite failure } else { - icon.setIcons(iconLoading); - icon.setTooltip(MSG.common_msg_loading()); + changeIcon(iconLoading, MSG.common_msg_loading()); uploadInProgress = true; super.submitForm(); } }
+ protected void changeIcon(FormItemIcon icon, String tooltip) { + FormItem item = (this.showUploadButton) ? this.uploadButton : this.fileUploadItem; + item.setIcons(icon); + item.setIconPrompt(tooltip); + markForRedraw(); + } + protected List<FormItem> getOnDrawItems() { List<FormItem> onDrawItems = new ArrayList<FormItem>();
@@ -176,40 +179,37 @@ public class FileUploadForm extends DynamicCallbackForm { onDrawItems.add(versionField);
fileUploadItem = new UploadItem("fileUploadItem", name); - fileUploadItem.setEndRow(false); fileUploadItem.setShowTitle(showNameLabel); + fileUploadItem.setWrapTitle(false); + fileUploadItem.setColSpan(1); onDrawItems.add(fileUploadItem);
- uploadButton = new ButtonItem(MSG.view_upload_upload()); - uploadButton.setVisible(this.showUploadButton); - uploadButton.setStartRow(false); - uploadButton.setEndRow(false); - uploadButton.addClickHandler(new ClickHandler() { - public void onClick(ClickEvent clickEvent) { - submitForm(); - } - }); - onDrawItems.add(uploadButton); + if (showUploadButton) { + fileUploadItem.setEndRow(false); + + uploadButton = new ButtonItem(MSG.view_upload_upload()); + uploadButton.setColSpan(1); + uploadButton.setStartRow(false); + uploadButton.setAutoFit(true); + uploadButton.addClickHandler(new ClickHandler() { + public void onClick(ClickEvent clickEvent) { + submitForm(); + } + }); + onDrawItems.add(uploadButton); + }
- icon = new StaticTextItem("icon"); - icon.setStartRow(false); - icon.setShowTitle(false); if (uploadResult != null) { if (uploadResult.booleanValue()) { - icon.setIcons(iconGreen); - icon.setTooltip(MSG.view_upload_alreadyUploaded()); + changeIcon(iconGreen, MSG.view_upload_alreadyUploaded()); } else { String message = MSG.view_upload_tooltip_2(); - icon.setIcons(iconRed); - icon.setTooltip(message); + changeIcon(iconRed, message); setUploadError(message); } } else { - icon.setIcons(iconGrey); - icon.setTooltip(MSG.view_upload_tooltip_1()); + changeIcon(iconGrey, (showUploadButton) ? MSG.view_upload_tooltip_1a() : MSG.view_upload_tooltip_1b()); } - icon.setShowIcons(true); - onDrawItems.add(icon);
return onDrawItems; } @@ -222,22 +222,15 @@ public class FileUploadForm extends DynamicCallbackForm { String results = event.getResults(); if (processSubmitCompleteResults(results)) { uploadResult = Boolean.TRUE; - icon.setIcons(iconGreen); - icon.setTooltip(MSG.view_upload_success()); + changeIcon(iconGreen, MSG.view_upload_success()); CoreGUI.getMessageCenter().notify(new Message(MSG.view_upload_success(), results, Severity.Info)); - icon.hide(); - icon.show(); } else { uploadResult = Boolean.FALSE; String cause = "[" + name + "] " + parseCauseFromResponse(results); - icon.setIcons(iconRed); - icon.setTooltip(cause); + changeIcon(iconRed, cause); setUploadError(cause); - icon.setTooltip(cause); CoreGUI.getMessageCenter().notify( new Message(MSG.view_upload_error_fileName(name), results, Severity.Error)); - icon.hide(); - icon.show(); } } }; @@ -250,12 +243,9 @@ public class FileUploadForm extends DynamicCallbackForm {
uploadResult = Boolean.FALSE; String cause = MSG.view_upload_error_fileName_2(name); - icon.setIcons(iconRed); - icon.setTooltip(cause); + changeIcon(iconRed, cause); setUploadError(cause); CoreGUI.getMessageCenter().notify(new Message(cause, Severity.Error)); - icon.hide(); - icon.show(); } }; } @@ -265,13 +255,7 @@ public class FileUploadForm extends DynamicCallbackForm { super.onDraw();
List<FormItem> onDrawItems = getOnDrawItems(); - int numCols = 0; - for (FormItem fi : onDrawItems) { - if (!(fi instanceof HiddenItem)) { - ++numCols; - } - } - setNumCols(numCols); + setNumCols(((this.showUploadButton) ? 2 : 1) + ((this.showNameLabel) ? 1 : 0)); setItems(onDrawItems.toArray(new FormItem[onDrawItems.size()]));
// push the form handler so it executes first if the form creator has also added a handler diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties index f5d15c3..ab5d9c0 100644 --- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties +++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties @@ -1105,9 +1105,10 @@ view_upload_error_fileName_2 = Error uploading file [{0}], check for invalid fil view_upload_error_packageVersionFile = Error uploading Package Version File view_upload_error_results = Error uploading file, unexpected results: [{0}] view_upload_inProgress = Can not submit, upload is currently in progress -view_upload_prompt_1 = [{0}] File to Upload +view_upload_prompt_1 = Please select a file to upload [{0}] view_upload_prompt_2 = File to Upload -view_upload_tooltip_1 = Select a file to upload, then click Upload or Next +view_upload_tooltip_1a = Select a file to upload, then click Upload or Next +view_upload_tooltip_1b = Select a file to upload, then click Next view_upload_tooltip_2 = File upload had previously failed view_upload_success = File successfully uploaded view_upload_upload = Upload diff --git a/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_green_16_Disabled.png b/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_green_16_Disabled.png new file mode 100644 index 0000000..4131950 Binary files /dev/null and b/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_green_16_Disabled.png differ diff --git a/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_grey_16_Disabled.png b/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_grey_16_Disabled.png new file mode 100644 index 0000000..666da45 Binary files /dev/null and b/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_grey_16_Disabled.png differ diff --git a/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_red_16_Disabled.png b/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_red_16_Disabled.png new file mode 100644 index 0000000..8e1ff7d Binary files /dev/null and b/modules/enterprise/gui/coregui/src/main/webapp/images/subsystems/availability/availability_red_16_Disabled.png differ
commit 131052fc2f6c294910d93323699a0a5ff0b6d832 Author: John Mazzitelli mazz@redhat.com Date: Tue Dec 14 15:49:10 2010 -0500
fix the concise message - make it small, the full error msg is the details
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java index a5490bf..6b90111 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDataStep.java @@ -226,8 +226,7 @@ public class BundleUploadDataStep extends AbstractWizardStep {
if (sendToMessageCenter) { CoreGUI.getMessageCenter().notify( - new Message(MSG.view_bundle_createWizard_failedToUploadDistroFile() + ": " + errorMessage, - Severity.Error)); + new Message(MSG.view_bundle_createWizard_failedToUploadDistroFile(), errorMessage, Severity.Error)); } }
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java index b776302..d06ad6c 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/create/BundleUploadDistroFileStep.java @@ -293,8 +293,7 @@ public class BundleUploadDistroFileStep extends AbstractWizardStep {
if (sendToMessageCenter) { CoreGUI.getMessageCenter().notify( - new Message(MSG.view_bundle_createWizard_failedToUploadDistroFile() + ": " + errorMessage, - Severity.Error)); + new Message(MSG.view_bundle_createWizard_failedToUploadDistroFile(), errorMessage, Severity.Error)); } } }