List of usage examples for org.eclipse.jface.dialogs MessageDialog openQuestion
public static boolean openQuestion(Shell parent, String title, String message)
From source file:com.nextep.designer.beng.ui.services.impl.DeliveryExportUIService.java
License:Open Source License
@Override public void exportDelivery(final IDeliveryModule module) { // Checking container status try {// ww w. j av a2s . c o m IVersionContainer c = (IVersionContainer) VersionHelper.getReferencedItem(module.getModuleRef()); IVersionable<IVersionContainer> v = VersionHelper.getVersionable(c); if (v.getVersion().getStatus() != IVersionStatus.CHECKED_IN) { boolean confirmed = MessageDialog.openQuestion(getShell(), BengUIMessages.getString("exportedModuleNotCheckedInTitle"), //$NON-NLS-1$ BengUIMessages.getString("exportedModuleNotCheckedIn")); //$NON-NLS-1$ if (!confirmed) { throw new CancelException("Export canceled by the user."); } } } catch (ExternalReferenceException e) { // ignoring for now } // Retrieving output folder String folder = SQLGenUtil.getPreference(PreferenceConstants.OUTPUT_FOLDER).trim(); char lastChar = folder.charAt(folder.length() - 1); if (lastChar == File.separatorChar) { folder = folder.substring(0, folder.length() - 1); } // Generating outputs String exportLoc = folder + File.separator + module.getName(); File f = new File(exportLoc); boolean newFolder = f.mkdir(); if (!newFolder) { boolean confirmed = MessageDialog.openQuestion(getShell(), BengUIMessages.getString("exportLocationExistsTitle"), //$NON-NLS-1$ BengUIMessages.getString("exportLocationExists")); //$NON-NLS-1$ if (!confirmed) { throw new CancelException("Export canceled by the user."); } } final String targetDirectory = folder; // Generating module Job j = new BlockingJob("Exporting delivery " + module.getName()) { @Override protected IStatus run(IProgressMonitor monitor) { try { exportService.exportDelivery(targetDirectory, module, monitor); } catch (UndeliverableIncrementException e) { final IDeliveryIncrement dlvInc = e.getDeliveryIncrement(); // Error property label final String titleMsg = e.isUniversal() ? "universalDeliveryNotAllowedTitle" : "prerequisiteFailedTitle"; final String errorMsg = e.isUniversal() ? "universalDeliveryNotAllowed" : "prerequisiteFailed"; Display.getDefault().syncExec(new Runnable() { @Override public void run() { MessageDialog.openWarning( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), BengUIMessages.getString(titleMsg), MessageFormat.format(BengUIMessages.getString(errorMsg), dlvInc.getModule().getName(), dlvInc.getFromRelease() == null ? "[Scratch]" : dlvInc.getFromRelease().getLabel(), dlvInc.getToRelease().getLabel())); } }); } return Status.OK_STATUS; } }; j.addJobChangeListener(new JobChangeAdapter() { public void done(IJobChangeEvent event) { if (event.getResult().isOK()) { Display.getDefault().asyncExec(new Runnable() { @Override public void run() { MessageDialog.openInformation( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Exported successfully", "Your delivery has been successfully exported to " + targetDirectory + File.separator + module.getName() + "."); //$NON-NLS-1$ } }); } }; }); j.setUser(true); j.schedule(); }
From source file:com.nextep.designer.beng.ui.services.impl.DeliveryUIService.java
License:Open Source License
private void cleanupDelivery(final IDeliveryModule module, List<IGenerationResult> results) { // Checking that we can remove any pre-existing script // First checking scripts to remove final List<IDeliveryItem<?>> deliveriesToRemove = new ArrayList<IDeliveryItem<?>>(); final StringBuffer scriptListBuf = new StringBuffer(100); for (IGenerationResult result : results) { Collection<ISQLScript> resultScripts = result.buildScript(); if (resultScripts == null) { resultScripts = Collections.emptyList(); }/*www. ja va2 s . co m*/ for (ISQLScript s : resultScripts) { // This loop is a safety check because the UI service should have cleaned everything final List<IDeliveryItem<?>> deliveries = module.getDeliveryItems(); for (IDeliveryItem<?> item : deliveries) { if (item.getName().equals(s.getName())) { deliveriesToRemove.add(item); scriptListBuf.append("\n - " + s.getName()); //$NON-NLS-1$ } } } } // Should we need to remove any previous script from the delivery, we ask the user if (!deliveriesToRemove.isEmpty()) { RunnableWithReturnedValue<Boolean> runnable = new RunnableWithReturnedValue<Boolean>() { @Override public void run() { returnedValue = MessageDialog.openQuestion( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), BengUIMessages.getString("overwriteDeliveriesTitle"), MessageFormat.format( //$NON-NLS-1$ BengUIMessages.getString("overwriteDeliveries"), scriptListBuf //$NON-NLS-1$ .toString())); if (returnedValue) { for (IDeliveryItem<?> i : deliveriesToRemove) { module.removeDeliveryItem(i); } } } }; Display.getDefault().syncExec(runnable); if (!runnable.returnedValue) { throw new CancelException(BengUIMessages.getString("service.ui.delivery.cancel")); //$NON-NLS-1$ } } }
From source file:com.nextep.designer.dbgm.gef.commands.ConnectionCreateCommand.java
License:Open Source License
/** * @see org.eclipse.gef.commands.Command#redo() *//*from w w w . j a v a2 s . c o m*/ @Override public void redo() { IBasicTable source = (IBasicTable) start.getItemModel(); IBasicTable remote = (IBasicTable) end.getItemModel(); source = VCSUIPlugin.getVersioningUIService().ensureModifiable(source); ITypedObjectUIController fkController = UIControllerFactory .getController(IElementType.getInstance(ForeignKeyConstraint.TYPE_ID)); ForeignKeyConstraint fk = new ForeignKeyConstraint(); // (ForeignKeyConstraint)fkController.emptyInstance(source.getShortName() // + "_" + remote.getShortName() + // "_FK",source); fk.setName(source.getShortName() + "_" + remote.getShortName() + "_FK"); fk.setConstrainedTable(source); // Retrieving remote unique key IKeyConstraint remoteUk = null; for (IKeyConstraint c : remote.getConstraints()) { if (c.getConstraintType() == ConstraintType.PRIMARY) { remoteUk = c; break; } } // Connecting to foreign key if (remoteUk != null) { fk.setRemoteConstraint(remoteUk); fk.setName(source.getShortName() + "_" + remote.getShortName() + "_FK"); } adjustForeignKeyColumns(fk, true); // If no enforcing index found, query the user to create one if ((fk.getEnforcingIndex() == null || fk.getEnforcingIndex().isEmpty()) && !fk.getConstrainedColumnsRef().isEmpty()) { boolean create = MessageDialog.openQuestion( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), DBGMUIMessages.getString("createEnforcingIndexTitle"), //$NON-NLS-1$ DBGMUIMessages.getString("createEnforcingIndexQuestion")); //$NON-NLS-1$ if (create) { IIndex i = (IIndex) UIControllerFactory.getController(IElementType.getInstance(IIndex.INDEX_TYPE)) .emptyInstance(fk.getName(), fk.getConstrainedTable()); // i.setIndexedTableRef(c.getConstrainedTable().getReference()); for (IReference colRef : fk.getConstrainedColumnsRef()) { i.addColumnRef(colRef); } } } // Adding ControllerFactory.getController(fk).save(fk); source.addConstraint(fk); fkController.defaultOpen(fk); }
From source file:com.nextep.designer.dbgm.gef.DiagramSelectionDropTargetListener.java
License:Open Source License
private void doDrop(List<?> objectsToDrop, Point targetPoint, IProgressMonitor monitor) { monitor.beginTask(DBGMUIMessages.getString("editor.diagram.addingTablesTask"), //$NON-NLS-1$ computeWorkCount(objectsToDrop) + 1); // Processing selection import into diagram boolean suggestAutoReorg = objectsToDrop.size() > 1; for (Object o : objectsToDrop) { if (o instanceof IBasicTable) { final IBasicTable t = (IBasicTable) o; monitor.subTask(MessageFormat.format(DBGMUIMessages.getString("addTableToDiagramCommand"), //$NON-NLS-1$ t.getName(), diagram.getName())); addDroppedTable(t, targetPoint); monitor.worked(1);//from ww w . j av a 2 s .c o m } else if (o instanceof IVersionContainer) { final IVersionContainer container = (IVersionContainer) o; Collection<IVersionable<?>> versionables = VersionHelper.getAllVersionables(container, IElementType.getInstance(IBasicTable.TYPE_ID)); for (IVersionable<?> v : versionables) { monitor.subTask(MessageFormat.format(DBGMUIMessages.getString("addTableToDiagramCommand"), //$NON-NLS-1$ v.getName(), diagram.getName())); addDroppedTable((IBasicTable) v, targetPoint); monitor.worked(1); } suggestAutoReorg = true; } } if (suggestAutoReorg) { monitor.subTask( MessageFormat.format(DBGMUIMessages.getString("autoLayoutDiagramCommand"), diagram.getName())); //$NON-NLS-1$ Display.getDefault().syncExec(new Runnable() { public void run() { if (MessageDialog.openQuestion(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), DBGMUIMessages.getString("questionAutoLayoutDiagramTitle"), DBGMUIMessages //$NON-NLS-1$ .getString("questionAutoLayoutDiagram"))) { //$NON-NLS-1$ DiagramLayoutService.autoLayout(diagram); } } }); } diagram.notifyListeners(ChangeEvent.MODEL_CHANGED, null); }
From source file:com.nextep.designer.dbgm.oracle.ui.impl.OracleUserTypeEditorGUI.java
License:Open Source License
@Override protected Control createSWTControl(Composite parent) { final Composite editor = (Composite) super.createSWTControl(parent); hasBodyButton = new Button(editor, SWT.CHECK); hasBodyButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 2, 1)); hasBodyButton.setText("This type has methods in a body"); hasBodyButton.addSelectionListener(new SelectionAdapter() { @Override/* w ww .ja v a 2s . com*/ public void widgetSelected(SelectionEvent e) { final IOracleUserType type = (IOracleUserType) getModel(); if (hasBodyButton.getSelection()) { type.setTypeBody("TYPE BODY " + type.getName() + " IS\n\t\nEND;\n"); type.notifyListeners(ChangeEvent.CUSTOM_1, null); } else { boolean confirmed = MessageDialog.openQuestion(editor.getShell(), DBOMUIMessages.getString("typeBodyWillBeDeletedTitle"), DBOMUIMessages.getString("typeBodyWillBeDeleted")); if (confirmed) { type.setTypeBody(null); } else { hasBodyButton.setSelection(true); } } } }); return editor; }
From source file:com.nextep.designer.dbgm.ui.actions.CheckConstraintsActionProvider.java
License:Open Source License
@Override public void remove(ITypedObject parent, ITypedObject toRemove) { final ICheckConstraint checkConstraint = (ICheckConstraint) toRemove; // Asking user confirmation final boolean confirmed = MessageDialog.openQuestion(Display.getDefault().getActiveShell(), MessageFormat.format(DBGMUIMessages.getString("editor.table.confirmDelCheckTitle"), //$NON-NLS-1$ checkConstraint.getName()), MessageFormat.format(DBGMUIMessages.getString("editor.table.confirmDelCheck"), //$NON-NLS-1$ checkConstraint.getName(), checkConstraint.getConstrainedTable().getName())); if (confirmed) { // If confirmed, we remove it through our workspace service final IWorkspaceUIService workspaceService = VCSUIPlugin.getService(IWorkspaceUIService.class); workspaceService.remove((IReferenceable) toRemove); }//from w ww. j a v a2 s .c om }
From source file:com.nextep.designer.dbgm.ui.actions.ColumnActionProvider.java
License:Open Source License
@Override public void remove(ITypedObject parent, ITypedObject toRemove) { final IBasicColumn column = (IBasicColumn) toRemove; // Asking user confirmation final boolean confirmed = MessageDialog.openQuestion(Display.getDefault().getActiveShell(), MessageFormat.format(DBGMUIMessages.getString("table.editor.confirmDelColumnTitle"), //$NON-NLS-1$ column.getName()),/* w w w . ja v a 2s. c o m*/ MessageFormat.format(DBGMUIMessages.getString("table.editor.confirmDelColumn"), //$NON-NLS-1$ column.getName(), column.getParent().getName())); if (confirmed) { // If confirmed, we remove it through our workspace service final IWorkspaceUIService workspaceService = VCSUIPlugin.getService(IWorkspaceUIService.class); workspaceService.remove((IReferenceable) toRemove); } }
From source file:com.nextep.designer.dbgm.ui.controllers.ForeignKeyUIController.java
License:Open Source License
/** * @see com.nextep.designer.ui.model.ITypedObjectUIController#newInstance(java.lang.Object) */// w ww . j av a 2 s . co m public Object newInstance(Object parent) { IBasicTable t = (IBasicTable) parent; String fkName = (t.getShortName() == null ? "" : t.getShortName()) + "__FK"; ForeignKeyConstraint c = new ForeignKeyConstraint(fkName, "", t); c.setName(getAvailableName(c.getType())); save(c); t.addConstraint(c); CorePlugin.getIdentifiableDao().save(t); // If no enforcing index found, query the user to create one if (c.getEnforcingIndex().isEmpty() && !c.getConstrainedColumnsRef().isEmpty()) { NamingService.getInstance().adjustName(c); boolean create = MessageDialog.openQuestion( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), DBGMUIMessages.getString("createEnforcingIndexTitle"), DBGMUIMessages.getString("createEnforcingIndexQuestion")); if (create) { IIndex i = (IIndex) UIControllerFactory.getController(IElementType.getInstance(IIndex.INDEX_TYPE)) .emptyInstance(c.getName(), c.getConstrainedTable()); // i.setIndexedTableRef(c.getConstrainedTable().getReference()); for (IReference colRef : c.getConstrainedColumnsRef()) { i.addColumnRef(colRef); } } } return c; }
From source file:com.nextep.designer.dbgm.ui.handlers.AddTableToDiagramHandler.java
License:Open Source License
/** * Adds the specified selection to the diagram. Selection may contain {@link IBasicTable} or * {@link IVersionable} elements// www.jav a 2s. c om * * @param diagram diagram to add elements to * @param sel JFace selection */ private void addSelectionToDiagram(final IDiagram diagram, ISelection sel) { if (!sel.isEmpty()) { if (sel instanceof IStructuredSelection) { List<ICommand> addTablesCmds = new ArrayList<ICommand>(); final Iterator<?> selIt = ((IStructuredSelection) sel).iterator(); while (selIt.hasNext()) { final Object o = selIt.next(); IBasicTable t = null; if (o instanceof IBasicTable) { t = (IBasicTable) o; } else if (o instanceof IVersionable) { t = (IBasicTable) ((IVersionable<?>) o).getVersionnedObject().getModel(); } if (t != null) { final ICommand cmd = addTableToDiagram(diagram, t); if (cmd != null) { addTablesCmds.add(cmd); } } } if (!addTablesCmds.isEmpty()) { addTablesCmds.add(new ICommand() { @Override public Object execute(Object... parameters) { if (MessageDialog.openQuestion( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), DBGMUIMessages.getString("questionAutoLayoutDiagramTitle"), DBGMUIMessages //$NON-NLS-1$ .getString("questionAutoLayoutDiagram"))) { //$NON-NLS-1$ DiagramLayoutService.autoLayout(diagram); } diagram.notifyListeners(ChangeEvent.MODEL_CHANGED, null); return null; } @Override public String getName() { return MessageFormat.format(DBGMUIMessages.getString("autoLayoutDiagramCommand"), diagram.getName()); } }); CommandProgress.runWithProgress(false, addTablesCmds.toArray(new ICommand[addTablesCmds.size()])); } } } }
From source file:com.nextep.designer.sqlgen.oracle.ui.impl.MaterializedViewEditorInput.java
License:Open Source License
@Override public void save(IDocumentProvider provider) { // Saving view CorePlugin.getIdentifiableDao().save(getModel()); // Parsing SQL when FAST refresh method to propose materialized view log generation final IMaterializedView view = getModel(); if (view.getRefreshMethod() == RefreshMethod.FAST) { List<IVersionable<?>> tables = VersionHelper.getAllVersionables(VersionHelper.getCurrentView(), IElementType.getInstance(IBasicTable.TYPE_ID)); List<IVersionable<?>> viewLogs = VersionHelper.getAllVersionables(VersionHelper.getCurrentView(), IElementType.getInstance(IMaterializedViewLog.TYPE_ID)); final String s = view.getSql(); if (s == null || "".equals(s.trim())) { return; }/* ww w . jav a2 s.c o m*/ List<IBasicTable> logTables = new ArrayList<IBasicTable>(); StringBuilder logTablesStr = new StringBuilder(100); // Looking for tables without logs for (IVersionable<?> t : tables) { if (s.contains(t.getName())) { final IBasicTable tab = (IBasicTable) t.getVersionnedObject().getModel(); boolean logTabFound = false; for (IVersionable<?> log : viewLogs) { if (tab.getReference().equals(((IMaterializedViewLog) log.getVersionnedObject().getModel()) .getTableReference())) { logTabFound = true; break; } } if (!logTabFound) { logTables.add(tab); logTablesStr.append(tab.getName() + "\n"); } } } if (logTables.isEmpty()) return; // Prompting user boolean isOk = MessageDialog.openQuestion( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), SQLOraUIMessages.getString("promptMaterializedViewLogCreationTitle"), MessageFormat.format(SQLOraUIMessages.getString("promptMaterializedViewLogCreation"), logTablesStr.toString())); if (isOk) { List<ICommand> cmds = new ArrayList<ICommand>(); for (final IBasicTable t : logTables) { cmds.add(new ICommand() { @Override public Object execute(Object... parameters) { IMaterializedViewLog l = (IMaterializedViewLog) UIControllerFactory .getController(IElementType.getInstance(IMaterializedViewLog.TYPE_ID)) .emptyInstance("", t); if (view.getViewType() == MaterializedViewType.PRIMARY_KEY) { l.setPrimaryKey(true); } else { l.setRowId(true); } return null; } @Override public String getName() { return MessageFormat.format(SQLOraUIMessages.getString("addingMaterializedViewLog"), t.getName()); } }); CommandProgress.runWithProgress(false, cmds.toArray(new ICommand[cmds.size()])); } } } }