1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
|
public MainProgramWindow(String fileName) {
...
doMainMenu(shell);
doToolBar(shell);
}
/*
* le menu du programme
*/
private void doMainMenu(final Decorations shell) {
// barre de menu
Menu mainMenu = new Menu(shell, SWT.BAR);
// items de la barre de menu
MenuItem menuFichier = new MenuItem(mainMenu, SWT.CASCADE);
menuFichier.setText(Labels.LABELS_MAP.get("FILE"+PROGRAM_LANGUAGE));
MenuItem menuOptions = new MenuItem(mainMenu, SWT.CASCADE);
menuOptions.setText(Labels.LABELS_MAP.get("OPTIONS"+PROGRAM_LANGUAGE));
MenuItem menuAide = new MenuItem(mainMenu, SWT.CASCADE);
menuAide.setText(Labels.LABELS_MAP.get("HELP"+PROGRAM_LANGUAGE));
// sous menus fichier
Menu sousMenuFichier = new Menu(shell, SWT.DROP_DOWN);
MenuItem optionNouveau = new MenuItem(sousMenuFichier, SWT.PUSH);
optionNouveau.setText(Labels.LABELS_MAP.get("NEW"+PROGRAM_LANGUAGE)+"\tCtrl+N");
setIcon(optionNouveau, NEW_FILE_ICON);
optionNouveau.setAccelerator(SWT.CTRL + 'n');
optionNouveau.addListener(SWT.Selection, new Listener(){
//blabla
}
});
/*
* Autres items du menu fichier
*/
// sous menus options
Menu sousMenuOptions = new Menu(shell, SWT.DROP_DOWN);
MenuItem optionParam = new MenuItem(sousMenuOptions, SWT.PUSH);
optionParam.setText(Labels.LABELS_MAP.get("PARAMETERS"+PROGRAM_LANGUAGE) + "\tCtrl+P");
optionParam.setAccelerator(SWT.CTRL + 'p');
setIcon(optionParam, OPTIONS_ICON);
optionParam.addListener(SWT.Selection, new Listener(){
//blabla
});
/*
* etc.
*/
// set
menuFichier.setMenu(sousMenuFichier);
menuOptions.setMenu(sousMenuOptions);
shell.setMenuBar(mainMenu);
}
private void doToolBar(final Decorations shell){
final CoolBar coolBar = new CoolBar(shell, SWT.NONE);
GridLayout gl = new GridLayout(1, false);
gl.marginHeight = 0;
GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);
coolBar.setLayoutData(gd);
coolBar.setLayout(gl);
CoolItem buttonItem = new CoolItem(coolBar, SWT.NONE | SWT.DROP_DOWN);
Composite composite = new Composite(coolBar, SWT.NONE);
composite.setLayout(new GridLayout(3, false));
Button bOpenFile = new Button(composite, SWT.PUSH);
if(!setIcon(bOpenFile, OPEN_FILE_ICON)){
bOpenFile.setText(Labels.LABELS_MAP.get("OPEN"+PROGRAM_LANGUAGE));
}
bOpenFile.setToolTipText(Labels.LABELS_MAP.get("TOOLTIP_OPEN_FILE"+PROGRAM_LANGUAGE));
bOpenFile.addListener(SWT.Selection, new Listener(){//blabla
});
Button bQuickSave = new Button(composite, SWT.PUSH);
if(!setIcon(bQuickSave, QUICK_SAVE_ICON)){
bQuickSave.setText(Labels.LABELS_MAP.get("QUICK_SAVE"+PROGRAM_LANGUAGE));
}
bQuickSave.setToolTipText(Labels.LABELS_MAP.get("QUICK_SAVE"+PROGRAM_LANGUAGE));
bQuickSave.addListener(SWT.Selection, new Listener(){
@Override
public void handleEvent(Event arg0) {//blabla
} });
Button bNewfile = new Button(composite, SWT.PUSH);
if(!setIcon(bNewfile, NEW_FILE_ICON)){
bNewfile.setText(Labels.LABELS_MAP.get("NEW_ACCOUNT"+PROGRAM_LANGUAGE));
}
bNewfile.addListener(SWT.Selection, new Listener(){//blabla
});
composite.pack();
Point size = composite.getSize();
buttonItem.setControl(composite);
buttonItem.setSize(buttonItem.computeSize(size.x, size.y));
} |
Partager