package com.iambookmaster.client;
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.Frame;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HasHorizontalAlignment;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.PopupPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.iambookmaster.client.locale.AppConstants;
import com.iambookmaster.client.locale.AppLocale;
import com.iambookmaster.client.locale.AppMessages;
import com.iambookmaster.client.model.Model;
/**
* About panel
* @author ggadyatskiy
*/
public class AboutPanel extends PopupPanel{
private AppConstants appConstants = AppLocale.getAppConstants();
private AppMessages appMessages = AppLocale.getAppMessages();
private Frame frame;
private Label title;
public AboutPanel() {
super();
setStyleName("exchangePanel");
VerticalPanel panel = new VerticalPanel();
panel.setSpacing(5);
panel.setSize("100%", "100%");
setWidget(panel);
title = new Label();
panel.add(title);
panel.setCellWidth(title,"100%");
panel.setCellHeight(title,"1%");
HTML html = new HTML(appConstants.copyright());
panel.add(html);
panel.setCellWidth(html,"100%");
panel.setCellHeight(html,"1%");
frame = new Frame();
frame.setSize("100%", "100%");
panel.add(frame);
panel.setCellWidth(frame,"100%");
panel.setCellHeight(frame,"99%");
ClickHandler listener = new ClickHandler() {
public void onClick(ClickEvent event) {
AboutPanel.this.hide();
}
};
Button closeButton = new Button(appConstants.closeButton(),listener);
panel.add(closeButton);
panel.setCellWidth(closeButton,"100%");
panel.setCellHeight(closeButton,"1%");
panel.setCellHorizontalAlignment(closeButton,HasHorizontalAlignment.ALIGN_CENTER);
}
public void centerAndShow(String locale) {
title.setText(appMessages.aboutTheProgram(Model.HI_VERSION,Model.LO_VERSION));
centerAndShow();
frame.setUrl(appConstants.pageAbout());
}
private void centerAndShow() {
int cw = Window.getClientWidth();
int w = cw -200;
if (w<400) {
w = 400;
}
int ch = Window.getClientHeight();
int h = ch-100;
if (h<300) {
h = 300;
}
setSize(String.valueOf(w)+"px", String.valueOf(h)+"px");
setPopupPosition((cw/2)-(w/2),(ch/2)-(h/2));
show();
}
public void centerAndShow(int maj, int min) {
title.setText(appMessages.getAboutTitle(maj,min));
centerAndShow();
// frame.setUrl("http://www.iambookmaster.com"+"/"+"remote/"+appConstants.locale() +"/"+maj+"_"+min+"/about.html");
frame.setUrl("http://localhost:8080/iambookmaster"+"/"+"remote/"+appConstants.locale() +"/"+maj+"_"+min+"/about.html");
}
}