Java tutorial
/* * This file is part of the GWTUML project and was written by Mounier Florian <mounier-dot-florian.at.gmail'dot'com> for Objet Direct * <http://wwww.objetdirect.com> * * Copyright 2009 Objet Direct Contact: gwtuml@googlegroups.com * * GWTUML is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later version. * * GWTUML is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with GWTUML. If not, see <http://www.gnu.org/licenses/>. */ package com.objetdirect.gwt.umldrawer.client; import com.google.gwt.user.client.ui.HasHorizontalAlignment; import com.google.gwt.user.client.ui.HasVerticalAlignment; import com.google.gwt.user.client.ui.HorizontalPanel; import com.google.gwt.user.client.ui.Image; import com.google.gwt.user.client.ui.RootPanel; /** * This class display an AJAX style loading screen to animate waiting time * * @author Florian Mounier (mounier-dot-florian.at.gmail'dot'com) * */ public class LoadingScreen { private final HorizontalPanel loadingPanel; /** * Constructor of the {@link LoadingScreen} * */ public LoadingScreen() { super(); final Image loader = new Image("ajax-loader.gif"); this.loadingPanel = new HorizontalPanel(); this.loadingPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); this.loadingPanel.setVerticalAlignment(HasVerticalAlignment.ALIGN_MIDDLE); this.loadingPanel.setSize("100%", "100%"); this.loadingPanel.add(loader); this.loadingPanel.setVisible(false); RootPanel.get().add(this.loadingPanel, 0, 0); } /** * Hide the loading screen */ public void hide() { this.loadingPanel.setVisible(false); } /** * Show the loading screen */ public void show() { this.loadingPanel.setVisible(true); } }