Package lv.odylab.evemanage.client.view

Source Code of lv.odylab.evemanage.client.view.LoginView

package lv.odylab.evemanage.client.view;

import com.google.gwt.user.client.ui.Anchor;
import com.google.gwt.user.client.ui.HasText;
import com.google.gwt.user.client.ui.HasVerticalAlignment;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Widget;
import com.google.inject.Inject;
import lv.odylab.evemanage.client.EveManageConstants;
import lv.odylab.evemanage.client.EveManageMessages;
import lv.odylab.evemanage.client.EveManageResources;
import lv.odylab.evemanage.client.presenter.LoginPresenter;

public class LoginView implements LoginPresenter.Display {
    private HorizontalPanel loginPanel;
    private HorizontalPanel bannerPanel;
    private Image spinnerImage;
    private Label userLoginLabel;
    private Anchor signInSignOutAnchor;
    private Anchor helpAnchor;
    private Anchor russianAnchor;
    private Anchor englishAnchor;
    private Label separatorLabel1;
    private Label separatorLabel2;
    private Label separatorLabel3;
    private Label bannerLabel;

    @Inject
    public LoginView(EveManageConstants constants, EveManageResources resources, EveManageMessages messages) {
        resources.css().ensureInjected();
        loginPanel = new HorizontalPanel();
        loginPanel.addStyleName(resources.css().loginPanel());

        spinnerImage = new Image(resources.spinnerIcon());
        spinnerImage.setVisible(false);
        spinnerImage.setTitle(messages.loading());

        Image userImage = new Image(resources.userIcon());
        userImage.setTitle(messages.user());
        userLoginLabel = new Label();
        userLoginLabel.setVisible(false);
        userLoginLabel.addStyleName(resources.css().userLoginLabel());
        separatorLabel1 = new Label("|");
        separatorLabel1.setVisible(false);
        separatorLabel1.addStyleName(resources.css().separatorLabel());
        separatorLabel2 = new Label("|");
        separatorLabel2.setVisible(false);
        separatorLabel2.addStyleName(resources.css().separatorLabel());
        separatorLabel3 = new Label("|");
        separatorLabel3.setVisible(false);
        separatorLabel3.addStyleName(resources.css().separatorLabel());
        signInSignOutAnchor = new Anchor();
        signInSignOutAnchor.setVisible(false);
        helpAnchor = new Anchor(messages.help(), constants.helpUrl(), "_blank");
        helpAnchor.setVisible(false);
        russianAnchor = new Anchor(messages.russian());
        russianAnchor.setVisible(false);
        englishAnchor = new Anchor(messages.english());
        englishAnchor.setVisible(false);
        loginPanel.add(userImage);
        loginPanel.add(spinnerImage);
        loginPanel.add(userLoginLabel);
        loginPanel.add(separatorLabel1);
        loginPanel.add(signInSignOutAnchor);
        loginPanel.add(separatorLabel2);
        loginPanel.add(helpAnchor);
        loginPanel.add(separatorLabel3);
        loginPanel.add(russianAnchor);
        loginPanel.add(englishAnchor);

        loginPanel.setCellVerticalAlignment(userImage, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(spinnerImage, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(userLoginLabel, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(separatorLabel1, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(signInSignOutAnchor, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(separatorLabel2, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(helpAnchor, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(separatorLabel3, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(russianAnchor, HasVerticalAlignment.ALIGN_MIDDLE);
        loginPanel.setCellVerticalAlignment(englishAnchor, HasVerticalAlignment.ALIGN_MIDDLE);

        bannerPanel = new HorizontalPanel();
        bannerPanel.setVisible(false);
        bannerLabel = new Label();
        bannerLabel.setStyleName(resources.css().bannerLabel());
        bannerPanel.add(bannerLabel);
        bannerPanel.setCellVerticalAlignment(bannerLabel, HasVerticalAlignment.ALIGN_MIDDLE);
    }

    @Override
    public void attach(HasWidgets container) {
        container.add(loginPanel);
        container.add(bannerPanel);
    }

    @Override
    public Widget getSpinnerImage() {
        return spinnerImage;
    }

    @Override
    public HasText getUserLoginLabel() {
        return userLoginLabel;
    }

    @Override
    public HasText getBannerLabel() {
        return bannerLabel;
    }

    @Override
    public Anchor getSignInSignOutAnchor() {
        return signInSignOutAnchor;
    }

    @Override
    public Anchor getRussianAnchor() {
        return russianAnchor;
    }

    @Override
    public Anchor getEnglishAnchor() {
        return englishAnchor;
    }

    @Override
    public void displayMenu() {
        userLoginLabel.setVisible(true);
        signInSignOutAnchor.setVisible(true);
        helpAnchor.setVisible(true);
        separatorLabel1.setVisible(true);
        separatorLabel2.setVisible(true);
        separatorLabel3.setVisible(true);
    }

    @Override
    public void displayBanner() {
        bannerPanel.setVisible(true);
    }
}
TOP

Related Classes of lv.odylab.evemanage.client.view.LoginView

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.