100 lines
2.7 KiB
Java
100 lines
2.7 KiB
Java
package org.gcube.portlets.user.td.columnwidget.client.custom;
|
|
|
|
import org.gcube.portlets.user.td.columnwidget.client.custom.ErrorMessageDialog.ErrorMessageDialogAppearance;
|
|
|
|
import com.google.gwt.core.client.GWT;
|
|
import com.google.gwt.resources.client.ClientBundle;
|
|
import com.google.gwt.resources.client.CssResource;
|
|
import com.google.gwt.resources.client.ImageResource;
|
|
import com.google.gwt.resources.client.ClientBundle.Source;
|
|
import com.google.gwt.safehtml.shared.SafeHtml;
|
|
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
|
|
import com.sencha.gxt.core.client.XTemplates;
|
|
import com.sencha.gxt.core.client.dom.XElement;
|
|
|
|
public class DefaultErrorMessageDialogApperance implements ErrorMessageDialogAppearance {
|
|
|
|
public interface Template extends XTemplates {
|
|
@XTemplate(source = "ErrorMessageDialog.html")
|
|
SafeHtml template(ErrorMessageDialogStyle style);
|
|
}
|
|
|
|
public interface ErrorMessageDialogStyle extends CssResource {
|
|
@ClassName("container")
|
|
public String getContainer();
|
|
|
|
@ClassName("error")
|
|
public String getError();
|
|
|
|
@ClassName("errorExtended")
|
|
public String getErrorExtended();
|
|
|
|
@ClassName("errorExtendedContainer")
|
|
public String getErrorExtendedContainer();
|
|
|
|
}
|
|
|
|
private final ErrorMessageDialogStyle style;
|
|
private final Template template;
|
|
|
|
public interface ErrorMessageDialogResources extends ClientBundle {
|
|
public static final ErrorMessageDialogResources INSTANCE = GWT.create(ErrorMessageDialogResources.class);
|
|
|
|
@Source("ErrorMessageDialog.css")
|
|
ErrorMessageDialogStyle style();
|
|
|
|
@Source("exclamation.png")
|
|
ImageResource error();
|
|
|
|
@Source("exclamation_32.png")
|
|
ImageResource error32();
|
|
|
|
}
|
|
|
|
public DefaultErrorMessageDialogApperance() {
|
|
this(ErrorMessageDialogResources.INSTANCE);
|
|
}
|
|
|
|
public DefaultErrorMessageDialogApperance(ErrorMessageDialogResources resources) {
|
|
this.style = resources.style();
|
|
this.style.ensureInjected();
|
|
|
|
this.template = GWT.create(Template.class);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public void render(SafeHtmlBuilder sb) {
|
|
sb.append(template.template(style));
|
|
}
|
|
|
|
|
|
|
|
public XElement getMessageElement(XElement parent) {
|
|
XElement element = parent.selectNode("." + style.getError());
|
|
return element;
|
|
}
|
|
|
|
public XElement getExtendedElement(XElement parent) {
|
|
XElement element = parent.selectNode("." + style.getErrorExtended());
|
|
return element;
|
|
|
|
}
|
|
|
|
public ImageResource getWindowIcon(){
|
|
return ErrorMessageDialogResources.INSTANCE.error();
|
|
};
|
|
|
|
/*public void onUpdateIcon(XElement parent, ImageResource icon) {
|
|
XElement element = parent.selectNode("." + style.getIconButtonImage());
|
|
Image image=new Image(icon);
|
|
Element img=image.getElement();
|
|
img.setClassName(style.getIconButtonRef());
|
|
element.appendChild(img);
|
|
|
|
}*/
|
|
|
|
}
|