blob: d3f81ebaa1c86768fe840d4cabf13e85b0ca58b4 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2011 Laurent CARON
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Laurent CARON (laurent.caron at gmail dot com) - initial API and implementation
*******************************************************************************/
package org.mihalis.opal.header;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.mihalis.opal.utils.SWTGraphicUtil;
/**
* This snippet demonstrates the Header widget
*
*/
public class HeaderSnippet {
/**
* @param args
*/
public static void main(final String[] args) {
final Display display = new Display();
final Shell shell = new Shell(display);
shell.setLayout(new GridLayout(1, false));
final Image icon = new Image(display, HeaderSnippet.class.getClassLoader().getResourceAsStream("org/mihalis/opal/header/configure.png"));
shell.setText("Header Snippet");
shell.setLayout(new GridLayout(2, false));
final Header header = new Header(shell, SWT.NONE);
header.setTitle("Header title");
header.setImage(icon);
header.setDescription("Description area for the header. You can put all <b>additional</b>, <i>relevant information</i> to the description panel (or <u>jokes</u>, citations, ... what you want !)");
header.setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, false, 2, 1));
createRow(shell, "First Name");
createRow(shell, "Last Name");
createRow(shell, "E-mail");
createRow(shell, "Phone number");
shell.setSize(640, 350);
SWTGraphicUtil.centerShell(shell);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
icon.dispose();
display.dispose();
}
private static void createRow(final Shell shell, final String label) {
final Label lbl = new Label(shell, SWT.NONE);
lbl.setText(label);
lbl.setLayoutData(new GridData(SWT.END, SWT.CENTER, false, false));
final Text text = new Text(shell, SWT.SINGLE | SWT.BORDER);
text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
}
}