Mega Code Archive

 
Categories / Java / SWT Jface Eclipse
 

Toolbar Shell Example 2

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.Display; import org.eclipse.swt.widgets.Menu; import org.eclipse.swt.widgets.MenuItem; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.ToolBar; import org.eclipse.swt.widgets.ToolItem; public class ToolbarShellExample2 {   Display d;   Shell s;   public static void main(String[] a){       new ToolbarShellExample2();      }   ToolbarShellExample2() {     d = new Display();     s = new Shell(d);     s.setSize(300, 300);     s.setText("A Shell Toolbar Example");     final ToolBar bar = new ToolBar(s, SWT.HORIZONTAL);     bar.setSize(500, 70);     bar.setLocation(0, 0);     // create images for toolbar buttons     final Image saveIcon = new Image(d, "rntsoft.gif");     final Image openIcon = new Image(d, "rntsoft.gif");     final Image childIcon = new Image(d, "rntsoft.gif");     final Image cutIcon = new Image(d, "rntsoft.gif");     final Image copyIcon = new Image(d, "rntsoft.gif");     final Image pasteIcon = new Image(d, "rntsoft.gif");     // create and add the button for performing an open operation     final ToolItem openToolItem = new ToolItem(bar, SWT.PUSH);     openToolItem.setImage(openIcon);     openToolItem.setText("Open");     openToolItem.setToolTipText("Open File");     //create and add the button for performing a save operation     final ToolItem saveToolItem = new ToolItem(bar, SWT.PUSH);     saveToolItem.setImage(saveIcon);     saveToolItem.setText("Save");     saveToolItem.setToolTipText("Save File");     final ToolItem sep1 = new ToolItem(bar, SWT.SEPARATOR);     //create and add the button for performing a cut operation     final ToolItem cutToolItem = new ToolItem(bar, SWT.PUSH);     cutToolItem.setImage(cutIcon);     cutToolItem.setText("Cut");     cutToolItem.setToolTipText("Cut");     // create and add the button for performing a copy operation     final ToolItem copyToolItem = new ToolItem(bar, SWT.PUSH);     copyToolItem.setImage(copyIcon);     copyToolItem.setText("Copy");     copyToolItem.setToolTipText("Copy");     // create and add the button for performing a paste operation     final ToolItem pasteToolItem = new ToolItem(bar, SWT.PUSH);     pasteToolItem.setImage(pasteIcon);     pasteToolItem.setText("Paste");     pasteToolItem.setToolTipText("Paste");     // create inner classes for SelectionListeners     class Open implements SelectionListener {       public void widgetSelected(SelectionEvent event) {         System.out.println("Open");       }       public void widgetDefaultSelected(SelectionEvent event) {       }     }     class Save implements SelectionListener {       public void widgetSelected(SelectionEvent event) {         System.out.println("Save");       }       public void widgetDefaultSelected(SelectionEvent event) {       }     }     class Cut implements SelectionListener {       public void widgetSelected(SelectionEvent event) {         System.out.println("Cut");       }       public void widgetDefaultSelected(SelectionEvent event) {       }     }     class Copy implements SelectionListener {       public void widgetSelected(SelectionEvent event) {         System.out.println("Copy");       }       public void widgetDefaultSelected(SelectionEvent event) {       }     }     class Paste implements SelectionListener {       public void widgetSelected(SelectionEvent event) {         System.out.println("Paste");       }       public void widgetDefaultSelected(SelectionEvent event) {       }     }     openToolItem.addSelectionListener(new Open());     saveToolItem.addSelectionListener(new Save());     cutToolItem.addSelectionListener(new Cut());     copyToolItem.addSelectionListener(new Copy());     pasteToolItem.addSelectionListener(new Paste());     // create the menu system     Menu m = new Menu(s, SWT.BAR);     // create a file menu and add an exit item     final MenuItem file = new MenuItem(m, SWT.CASCADE);     file.setText("&File");     final Menu filemenu = new Menu(s, SWT.DROP_DOWN);     file.setMenu(filemenu);     final MenuItem openMenuItem = new MenuItem(filemenu, SWT.PUSH);     openMenuItem.setText("&Open\tCTRL+O");     openMenuItem.setAccelerator(SWT.CTRL + 'O');     final MenuItem saveMenuItem = new MenuItem(filemenu, SWT.PUSH);     saveMenuItem.setText("&Save\tCTRL+S");     saveMenuItem.setAccelerator(SWT.CTRL + 'S');     final MenuItem separator = new MenuItem(filemenu, SWT.SEPARATOR);     final MenuItem exitMenuItem = new MenuItem(filemenu, SWT.PUSH);     exitMenuItem.setText("E&xit");     // create an edit menu and add cut copy and paste items     final MenuItem edit = new MenuItem(m, SWT.CASCADE);     edit.setText("&Edit");     final Menu editmenu = new Menu(s, SWT.DROP_DOWN);     edit.setMenu(editmenu);     final MenuItem cutMenuItem = new MenuItem(editmenu, SWT.PUSH);     cutMenuItem.setText("&Cut");     final MenuItem copyMenuItem = new MenuItem(editmenu, SWT.PUSH);     copyMenuItem.setText("Co&py");     final MenuItem pasteMenuItem = new MenuItem(editmenu, SWT.PUSH);     pasteMenuItem.setText("&Paste");     //create a Window menu and add Child item     final MenuItem window = new MenuItem(m, SWT.CASCADE);     window.setText("&Window");     final Menu windowmenu = new Menu(s, SWT.DROP_DOWN);     window.setMenu(windowmenu);     final MenuItem maxMenuItem = new MenuItem(windowmenu, SWT.PUSH);     maxMenuItem.setText("Ma&ximize");     final MenuItem minMenuItem = new MenuItem(windowmenu, SWT.PUSH);     minMenuItem.setText("Mi&nimize");     // create a Help menu and add an about item     final MenuItem help = new MenuItem(m, SWT.CASCADE);     help.setText("&Help");     final Menu helpmenu = new Menu(s, SWT.DROP_DOWN);     help.setMenu(helpmenu);     final MenuItem aboutMenuItem = new MenuItem(helpmenu, SWT.PUSH);     aboutMenuItem.setText("&About");     // add action listeners for the menu items     openMenuItem.addSelectionListener(new Open());     saveMenuItem.addSelectionListener(new Save());     exitMenuItem.addSelectionListener(new SelectionListener() {       public void widgetSelected(SelectionEvent e) {         System.exit(0);       }       public void widgetDefaultSelected(SelectionEvent e) {       }     });     cutMenuItem.addSelectionListener(new Cut());     copyMenuItem.addSelectionListener(new Copy());     pasteMenuItem.addSelectionListener(new Paste());     maxMenuItem.addSelectionListener(new SelectionListener() {       public void widgetSelected(SelectionEvent e) {         Shell parent = (Shell) maxMenuItem.getParent().getParent();         parent.setMaximized(true);       }       public void widgetDefaultSelected(SelectionEvent e) {       }     });     minMenuItem.addSelectionListener(new SelectionListener() {       public void widgetSelected(SelectionEvent e) {         Shell parent = (Shell) minMenuItem.getParent().getParent();         parent.setMaximized(false);       }       public void widgetDefaultSelected(SelectionEvent e) {       }     });     aboutMenuItem.addSelectionListener(new SelectionListener() {       public void widgetSelected(SelectionEvent e) {         System.out.println("Help Invoked");       }       public void widgetDefaultSelected(SelectionEvent e) {       }     });     s.setMenuBar(m);     s.open();     while (!s.isDisposed()) {       if (!d.readAndDispatch())         d.sleep();     }     d.dispose();   } }