package de.alka1de.gui;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class Gui
{
private Display display;
private Shell shell;
private Image imageDeck;
private Image imageEmptyDeck;
private Image imageBackground;
private Text text_IL;
private Composite composite1;
private Menu menueLeiste, startMenue, hilfeMenue;
private MenuItem startMenueHeader, hilfeMenueHeader;
private MenuItem spielBeenden, spielStarten, spielanleitung;
private Label label;
public Gui()
{
// ----- Shell Eigenschaften
display = new Display();
shell = new Shell(display, SWT.CLOSE | SWT.TITLE | SWT.MIN | SWT.MAX);
shell.setText("U² - ULTIMATE UNO ");
shell.setMaximized(true);
shell.setSize(878, 669);
// ----- Bilder
imageDeck = new Image(display, "deck.png");
imageEmptyDeck = new Image(display, "empty_deck.png");
// ----- Hintergrundbild für das Spielfeld
shell.setBackgroundImage(new Image(display, "background.gif"));
// ----- Composite für die Spielkarten
Composite compCards = new Composite(shell, SWT.NULL);
compCards.setBounds(600, 75, 270, 540);
compCards.setBackgroundImage(imageBackground);
// ----- Deklaration der Karten
Button deck = new Button(compCards, SWT.PUSH);
deck.setBounds(30, 30, 78, 119);
deck.setImage(imageDeck);
System.out.println(deck.getImage());
Button emptyDeck = new Button(compCards, SWT.PUSH);
emptyDeck.setBounds(150, 30, 78, 119);
emptyDeck.setImage(imageEmptyDeck);
System.out.println(emptyDeck.getImage());
// ----- Composite für die Textausgabe
// ----- Textareal
//shell.setLayout(new GridLayout());
{
composite1 = new Composite(shell, SWT.NONE);
{
text_IL = new Text(shell, SWT.READ_ONLY | SWT.BORDER | SWT.V_SCROLL);
text_IL.setText("TEXTAUSGABE");
text_IL.setBounds(270, 75, 330, 540);
}
composite1.setBounds(0, 75, 270, 540);
composite1.setBackgroundImage(imageBackground);
}
menueLeiste = new Menu(shell, SWT.BAR);
startMenueHeader = new MenuItem(menueLeiste, SWT.CASCADE);
startMenueHeader.setText("Spiel");
startMenue = new Menu(shell, SWT.DROP_DOWN);
startMenueHeader.setMenu(startMenue);
spielStarten = new MenuItem(startMenue, SWT.PUSH);
spielStarten.setText("Neues Spiel");
spielBeenden = new MenuItem(startMenue, SWT.PUSH);
spielBeenden.setText("Beenden");
hilfeMenueHeader = new MenuItem(menueLeiste, SWT.CASCADE);
hilfeMenueHeader.setText("Hilfe");
hilfeMenue = new Menu(shell, SWT.DROP_DOWN);
hilfeMenueHeader.setMenu(hilfeMenue);
spielanleitung = new MenuItem(hilfeMenue, SWT.PUSH);
spielanleitung.setText("Spielanleitung");
spielBeenden.addSelectionListener(new fileExitItemListener());
spielStarten.addSelectionListener(new fileSaveItemListener());
spielanleitung.addSelectionListener(new helpGetHelpItemListener());
shell.setMenuBar(menueLeiste);
shell.open();
while (!shell.isDisposed())
{
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
class fileExitItemListener implements SelectionListener
{
public void widgetSelected(SelectionEvent event)
{
shell.close();
display.dispose();
}
public void widgetDefaultSelected(SelectionEvent event)
{
shell.close();
display.dispose();
}
}
class fileSaveItemListener implements SelectionListener
{
public void widgetSelected(SelectionEvent event)
{
label.setText("Jetzt geht es los!");
}
public void widgetDefaultSelected(SelectionEvent event)
{
label.setText("Jetzt geht es los!");
}
}
class helpGetHelpItemListener implements SelectionListener
{
public void widgetSelected(SelectionEvent event)
{
label.setText("Lorem und Ipsum und so...!");
}
public void widgetDefaultSelected(SelectionEvent event)
{
label.setText("Lorem und Ipsum und so...!");
}
}
public static void main(String[] args)
{
new Gui();
}
}