package cz.nkp.differ.gui.components;
import com.vaadin.ui.AbsoluteLayout;
import com.vaadin.ui.Button;
import com.vaadin.ui.CustomComponent;
import com.vaadin.ui.Layout;
import com.vaadin.ui.LoginForm;
import com.vaadin.ui.LoginForm.LoginListener;
import com.vaadin.ui.VerticalLayout;
import com.vaadin.ui.Window;
import cz.nkp.differ.gui.windows.RegisterUserWindow;
import cz.nkp.differ.util.GUIMacros;
/**
* Basic login form wrapper created so that adding customization to the form later would be much easier.
* @author Joshua Mabrey
* May 4, 2012
*/
@SuppressWarnings("serial")
public class LoginRegisterComponent extends CustomComponent {
private Window mainWindow;
public LoginRegisterComponent(Window window, LoginListener parent) {
this.mainWindow = window;
setCompositionRoot(createUserLoginForm(parent));
}
private Layout createUserLoginForm(final LoginListener parent) {
AbsoluteLayout layout = new AbsoluteLayout();
layout.setWidth("400px");
layout.setHeight("200px");
LoginForm loginForm = new LoginForm();
loginForm.addListener(parent);
layout.addComponent(loginForm, "left: 0px; top: 0px;");
Button registerButton = new Button("Register");
registerButton.addListener(GUIMacros.createWindowOpenButtonListener(mainWindow, new RegisterUserWindow()));
layout.addComponent(registerButton, "left: 65px; top: 80px;");
VerticalLayout wrapper = new VerticalLayout();
wrapper.addComponent(layout);
/*
Button guestLogin = new Button("Guest Login");
guestLogin.addListener(new Listener() {
@Override
public void componentEvent(Event event) {
DifferProgramTab tab = (DifferProgramTab) parent;
tab.guestLogin();
}
});
wrapper.addComponent(guestLogin);
*/
return wrapper;
}
}