blob: eb301dcfcf7b5b5c02c61c95e79e1e2bc0b83324 [file] [log] [blame]
/*
* Copyright 2006 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.google.gwt.sample.mail.client;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.ClickListener;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
/**
* The top panel, which contains the 'welcome' message and various links.
*/
public class TopPanel extends Composite implements ClickListener {
private HTML signOutLink = new HTML("<a href='javascript:;'>Sign Out</a>");
private HTML aboutLink = new HTML("<a href='javascript:;'>About</a>");
public TopPanel() {
HorizontalPanel outer = new HorizontalPanel();
VerticalPanel inner = new VerticalPanel();
outer.setHorizontalAlignment(HorizontalPanel.ALIGN_RIGHT);
inner.setHorizontalAlignment(HorizontalPanel.ALIGN_RIGHT);
HorizontalPanel links = new HorizontalPanel();
links.setSpacing(4);
links.add(signOutLink);
links.add(aboutLink);
outer.add(inner);
inner.add(new HTML("<b>Welcome back, foo@example.com</b>"));
inner.add(links);
signOutLink.addClickListener(this);
aboutLink.addClickListener(this);
initWidget(outer);
inner.setStyleName("mail-TopPanel");
links.setStyleName("mail-TopPanelLinks");
}
public void onClick(Widget sender) {
if (sender == signOutLink) {
Window.alert("If this were implemented, you would be signed out now.");
} else if (sender == aboutLink) {
// When the 'About' item is selected, show the AboutDialog.
// Note that showing a dialog box does not block -- execution continues
// normally, and the dialog fires an event when it is closed.
AboutDialog dlg = new AboutDialog();
// Position it roughly in the middle of the screen.
int left = (Window.getClientWidth() - 512) / 2;
int top = (Window.getClientHeight() - 256) / 2;
dlg.setPopupPosition(left, top);
dlg.show();
}
}
}