package ConnectivityEditor.Window;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.program.Program;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import Builder.BuilderConfigurationManager;
import LDraw.Support.LDrawPaths;
import Window.CocoaUIEnhancer;
import Window.PreferencesView;
public class MenuHandlerForConnectivityEditor extends SelectionAdapter {
ConnectivityEditor connEditor = null;
Shell shell = null;
public MenuHandlerForConnectivityEditor() {
}
public MenuHandlerForConnectivityEditor(ConnectivityEditor builder,
Shell shell) {
this();
this.connEditor = builder;
this.shell = shell;
}
@Override
public void widgetSelected(SelectionEvent event) {
String menuText = ((MenuItem) event.getSource()).getText();
if (menuText.equals("Exit"))
shell.dispose();
else if (menuText.equals("New")) {
connEditor.newLDrawFile();
} else if (menuText.equals("Open...")) {
if (connEditor.checkChanged(shell)) {
connEditor.openFile(null);
}
} else if (menuText.equals("Save")) {
connEditor.saveAs(shell, null);
} else if (menuText.equals("Save As...")) {
connEditor.saveAs(shell, null);
} else if (menuText.equals("About BrickBuilder...")) {
// pop up an about page.
MessageBox messageBox = (MessageBox) ((MenuItem) event.getSource())
.getData();
messageBox.open();
} else if (menuText.equals("Suggestion or Bug report")) {
Program.launch("https://drive.google.com/#folders/0B5hp4f0ytGSfdkxzN2ZXT0VNYXM");
} else if (menuText.equals("Undo")) {
// LDrawUndoRedoManager.getInstance().undo();
} else if (menuText.equals("Redo")) {
// LDrawUndoRedoManager.getInstance().redo();
} else if (menuText.equals("Preferences")) {
PreferencesView preferencesView = (PreferencesView) ((MenuItem) event
.getSource()).getData();
preferencesView.showDialog(shell.getDisplay());
}
}
public void generateMenu() {
Menu menubar = new Menu(shell, SWT.BAR);
shell.setMenuBar(menubar);
MenuItem cascadeMenu = new MenuItem(menubar, SWT.CASCADE);
cascadeMenu.setText("File");
Menu menu_file = new Menu(cascadeMenu);
cascadeMenu.setMenu(menu_file);
MenuItem subMenu = new MenuItem(menu_file, SWT.NONE);
subMenu.addSelectionListener(this);
subMenu.setText("Open...");
subMenu = new MenuItem(menu_file, SWT.NONE);
subMenu.addSelectionListener(this);
subMenu.setText("Save As...");
subMenu = new MenuItem(menu_file, SWT.SEPARATOR);
subMenu.setText("");
subMenu = new MenuItem(menu_file, SWT.NONE);
subMenu.addSelectionListener(this);
subMenu.setText("Exit");
}
}