List of usage examples for org.eclipse.jface.window ToolTip NO_RECREATE
int NO_RECREATE
To view the source code for org.eclipse.jface.window ToolTip NO_RECREATE.
Click Source Link
From source file:org.larz.dom4.editor.AbstractDetailsPage.java
License:Open Source License
/** * @param control/*from w w w. j a v a 2 s . c om*/ * @param text */ protected void setToolTip(Control control, String text) { DefaultToolTip toolTip = new DefaultToolTip(control, SWT.BALLOON | ToolTip.NO_RECREATE, false); toolTip.setText(text); toolTip.setHideDelay(0); toolTip.setShift(new Point(0, 25)); }
From source file:org.ow2.petals.client.swt.dialogs.ServiceRegistryViewerDialog.java
License:Open Source License
@Override protected Control createDialogArea(final Composite parent) { // General properties getShell().setText("Consume a Petals Service"); setTitle("Consume a Petals Service"); setMessage(DEFAULT_MSG);/*from ww w . j ava 2 s. c o m*/ Composite outterComposite = new Composite(parent, SWT.BORDER); outterComposite.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE)); GridLayoutFactory.swtDefaults().margins(0, 0).applyTo(outterComposite); outterComposite.setLayoutData(new GridData(GridData.FILL_BOTH)); Tree tree = new Tree(outterComposite, SWT.HIDE_SELECTION | SWT.FULL_SELECTION | SWT.SINGLE); GridData layoutData = new GridData(GridData.FILL_BOTH); layoutData.widthHint = 400; layoutData.heightHint = 400; tree.setLayoutData(layoutData); final TreeViewer treeViewer = new TreeViewer(tree); treeViewer.setContentProvider(new ServiceRegistryContentProvider()); this.labelProvider = new ServiceRegistryLabelProvider(); treeViewer.setLabelProvider(this.labelProvider); ColumnViewerToolTipSupport.enableFor(treeViewer, ToolTip.NO_RECREATE); // Prepare the input... Map<QName, ItfBean> itfNameToInterface = new HashMap<QName, ItfBean>(); for (ServiceEndpoint se : this.serviceEndpoints) { // Handle the interface name ItfBean itfBean = itfNameToInterface.get(se.getInterfaceName()); if (itfBean == null) { itfBean = new ItfBean(); itfBean.itfName = se.getInterfaceName(); itfNameToInterface.put(itfBean.itfName, itfBean); } // Handle the service name SrvBean srvBean = itfBean.srvNameToService.get(se.getServiceName()); if (srvBean == null) { srvBean = new SrvBean(); srvBean.itfName = itfBean.itfName; srvBean.srvName = se.getServiceName(); itfBean.srvNameToService.put(srvBean.srvName, srvBean); } // Handle the end-point name EdptBean edptBean = new EdptBean(); edptBean.se = se; srvBean.endpoints.add(edptBean); } // ... and set it! treeViewer.setInput(itfNameToInterface); // Listen to the selection treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent e) { Object o = ((IStructuredSelection) e.getSelection()).getFirstElement(); if (o instanceof ItfBean) { ServiceRegistryViewerDialog.this.itfToInvoke = ((ItfBean) o).itfName; ServiceRegistryViewerDialog.this.srvToInvoke = null; ServiceRegistryViewerDialog.this.edptToInvoke = null; } else if (o instanceof SrvBean) { ServiceRegistryViewerDialog.this.itfToInvoke = ((SrvBean) o).itfName; ServiceRegistryViewerDialog.this.srvToInvoke = ((SrvBean) o).srvName; ServiceRegistryViewerDialog.this.edptToInvoke = null; } else if (o instanceof EdptBean) { ServiceRegistryViewerDialog.this.itfToInvoke = ((EdptBean) o).se.getInterfaceName(); ServiceRegistryViewerDialog.this.srvToInvoke = ((EdptBean) o).se.getServiceName(); ServiceRegistryViewerDialog.this.edptToInvoke = ((EdptBean) o).se.getEndpointName(); } Button okButton; if (ServiceRegistryViewerDialog.this.itfToInvoke != null && (okButton = getButton(IDialogConstants.OK_ID)) != null) okButton.setEnabled(true); } }); return outterComposite; }
From source file:org.ow2.petals.engine.client.swt.dialogs.ServiceRegistryViewerDialog.java
License:Open Source License
@Override protected Control createDialogArea(final Composite parent) { // General properties getShell().setText("Consume a Petals Service"); setTitle("Consume a Petals Service"); setMessage(DEFAULT_MSG);// w w w . j a va 2s. com Composite outterComposite = new Composite(parent, SWT.BORDER); outterComposite.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE)); GridLayoutFactory.swtDefaults().margins(0, 0).applyTo(outterComposite); outterComposite.setLayoutData(new GridData(GridData.FILL_BOTH)); Tree tree = new Tree(outterComposite, SWT.HIDE_SELECTION | SWT.FULL_SELECTION | SWT.SINGLE); GridData layoutData = new GridData(GridData.FILL_BOTH); layoutData.widthHint = 400; layoutData.heightHint = 400; tree.setLayoutData(layoutData); final TreeViewer treeViewer = new TreeViewer(tree); treeViewer.setContentProvider(new ServiceRegistryContentProvider()); this.labelProvider = new ServiceRegistryLabelProvider(); treeViewer.setLabelProvider(this.labelProvider); ColumnViewerToolTipSupport.enableFor(treeViewer, ToolTip.NO_RECREATE); // Prepare the input... Map<QName, ItfBean> itfNameToInterface = new HashMap<QName, ItfBean>(); for (ServiceEndpoint se : this.serviceEndpoints) { // Handle the interface name ItfBean itfBean = itfNameToInterface.get(se.getInterfaces()[0]); if (itfBean == null) { itfBean = new ItfBean(); itfBean.itfName = se.getInterfaces()[0]; itfNameToInterface.put(itfBean.itfName, itfBean); } // Handle the service name SrvBean srvBean = itfBean.srvNameToService.get(se.getServiceName()); if (srvBean == null) { srvBean = new SrvBean(); srvBean.itfName = itfBean.itfName; srvBean.srvName = se.getServiceName(); itfBean.srvNameToService.put(srvBean.srvName, srvBean); } // Handle the end-point name EdptBean edptBean = new EdptBean(); edptBean.se = se; srvBean.endpoints.add(edptBean); } // ... and set it! treeViewer.setInput(itfNameToInterface); // Listen to the selection treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent e) { Object o = ((IStructuredSelection) e.getSelection()).getFirstElement(); if (o instanceof ItfBean) { ServiceRegistryViewerDialog.this.itfToInvoke = ((ItfBean) o).itfName; ServiceRegistryViewerDialog.this.srvToInvoke = null; ServiceRegistryViewerDialog.this.edptToInvoke = null; } else if (o instanceof SrvBean) { ServiceRegistryViewerDialog.this.itfToInvoke = ((SrvBean) o).itfName; ServiceRegistryViewerDialog.this.srvToInvoke = ((SrvBean) o).srvName; ServiceRegistryViewerDialog.this.edptToInvoke = null; } else if (o instanceof EdptBean) { ServiceRegistryViewerDialog.this.itfToInvoke = ((EdptBean) o).se.getInterfaces()[0]; ServiceRegistryViewerDialog.this.srvToInvoke = ((EdptBean) o).se.getServiceName(); ServiceRegistryViewerDialog.this.edptToInvoke = ((EdptBean) o).se.getEndpointName(); } Button okButton; if (ServiceRegistryViewerDialog.this.itfToInvoke != null && (okButton = getButton(IDialogConstants.OK_ID)) != null) okButton.setEnabled(true); } }); return outterComposite; }
From source file:org.pentaho.di.ui.spoon.job.JobGraph.java
License:Apache License
public JobGraph(Composite par, final Spoon spoon, final JobMeta jobMeta) { super(par, SWT.NONE); shell = par.getShell();/* w w w. j a va 2 s. c om*/ this.log = spoon.getLog(); this.spoon = spoon; this.jobMeta = jobMeta; spoon.clearSearchFilter(); this.props = PropsUI.getInstance(); this.areaOwners = new ArrayList<>(); this.mouseOverEntries = new ArrayList<>(); this.delayTimers = new HashMap<>(); jobLogDelegate = new JobLogDelegate(spoon, this); jobHistoryDelegate = new JobHistoryDelegate(spoon, this); jobGridDelegate = new JobGridDelegate(spoon, this); jobMetricsDelegate = new JobMetricsDelegate(spoon, this); refreshListeners = new ArrayList<RefreshListener>(); try { KettleXulLoader loader = new KettleXulLoader(); loader.setIconsSize(16, 16); loader.setSettingsManager(XulSpoonSettingsManager.getInstance()); ResourceBundle bundle = new XulSpoonResourceBundle(JobGraph.class); XulDomContainer container = loader.loadXul(XUL_FILE_JOB_GRAPH, bundle); container.addEventHandler(this); SpoonPluginManager.getInstance().applyPluginsForContainer("job-graph", xulDomContainer); setXulDomContainer(container); } catch (XulException e1) { log.logError(toString(), Const.getStackTracker(e1)); } setLayout(new FormLayout()); setLayoutData(new GridData(GridData.FILL_BOTH)); // Add a tool-bar at the top of the tab // The form-data is set on the native widget automatically // addToolBar(); // The main composite contains the graph view, but if needed also // a view with an extra tab containing log, etc. // mainComposite = new Composite(this, SWT.NONE); mainComposite.setLayout(new FillLayout()); // Nick's fix below ------- Control toolbarControl = (Control) toolbar.getManagedObject(); FormData toolbarFd = new FormData(); toolbarFd.left = new FormAttachment(0, 0); toolbarFd.right = new FormAttachment(100, 0); toolbarControl.setLayoutData(toolbarFd); toolbarControl.setParent(this); // ------------------------ FormData fdMainComposite = new FormData(); fdMainComposite.left = new FormAttachment(0, 0); fdMainComposite.top = new FormAttachment((Control) toolbar.getManagedObject(), 0); fdMainComposite.right = new FormAttachment(100, 0); fdMainComposite.bottom = new FormAttachment(100, 0); mainComposite.setLayoutData(fdMainComposite); // To allow for a splitter later on, we will add the splitter here... // sashForm = new SashForm(mainComposite, SWT.VERTICAL); // Add a canvas below it, use up all space initially // canvas = new Canvas(sashForm, SWT.V_SCROLL | SWT.H_SCROLL | SWT.NO_BACKGROUND | SWT.BORDER); sashForm.setWeights(new int[] { 100, }); try { Document doc = xulDomContainer.getDocumentRoot(); menuMap.put("job-graph-hop", (XulMenupopup) doc.getElementById("job-graph-hop")); menuMap.put("job-graph-note", (XulMenupopup) doc.getElementById("job-graph-note")); menuMap.put("job-graph-background", (XulMenupopup) doc.getElementById("job-graph-background")); menuMap.put("job-graph-entry", (XulMenupopup) doc.getElementById("job-graph-entry")); } catch (Throwable t) { log.logError(Const.getStackTracker(t)); new ErrorDialog( shell, BaseMessages.getString(PKG, "JobGraph.Exception.ErrorReadingXULFile.Title"), BaseMessages .getString(PKG, "JobGraph.Exception.ErrorReadingXULFile.Message", Spoon.XUL_FILE_MENUS), new Exception(t)); } toolTip = new DefaultToolTip(canvas, ToolTip.NO_RECREATE, true); toolTip.setRespectMonitorBounds(true); toolTip.setRespectDisplayBounds(true); toolTip.setPopupDelay(350); toolTip.setShift(new org.eclipse.swt.graphics.Point(ConstUI.TOOLTIP_OFFSET, ConstUI.TOOLTIP_OFFSET)); helpTip = new CheckBoxToolTip(canvas); helpTip.addCheckBoxToolTipListener(new CheckBoxToolTipListener() { public void checkBoxSelected(boolean enabled) { spoon.props.setShowingHelpToolTips(enabled); } }); newProps(); selectionRegion = null; hop_candidate = null; last_hop_split = null; selectedEntries = null; selectedNote = null; hori = canvas.getHorizontalBar(); vert = canvas.getVerticalBar(); hori.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { redraw(); } }); vert.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { redraw(); } }); hori.setThumb(100); vert.setThumb(100); hori.setVisible(true); vert.setVisible(true); setVisible(true); canvas.addPaintListener(new PaintListener() { public void paintControl(PaintEvent e) { JobGraph.this.paintControl(e); } }); selectedEntries = null; lastclick = null; canvas.addMouseListener(this); canvas.addMouseMoveListener(this); canvas.addMouseTrackListener(this); canvas.addMouseWheelListener(this); // Drag & Drop for steps Transfer[] ttypes = new Transfer[] { XMLTransfer.getInstance() }; DropTarget ddTarget = new DropTarget(canvas, DND.DROP_MOVE); ddTarget.setTransfer(ttypes); ddTarget.addDropListener(new DropTargetListener() { public void dragEnter(DropTargetEvent event) { drop_candidate = PropsUI.calculateGridPosition(getRealPosition(canvas, event.x, event.y)); redraw(); } public void dragLeave(DropTargetEvent event) { drop_candidate = null; redraw(); } public void dragOperationChanged(DropTargetEvent event) { } public void dragOver(DropTargetEvent event) { drop_candidate = PropsUI.calculateGridPosition(getRealPosition(canvas, event.x, event.y)); redraw(); } public void drop(DropTargetEvent event) { // no data to copy, indicate failure in event.detail if (event.data == null) { event.detail = DND.DROP_NONE; return; } Point p = getRealPosition(canvas, event.x, event.y); try { DragAndDropContainer container = (DragAndDropContainer) event.data; String entry = container.getData(); switch (container.getType()) { case DragAndDropContainer.TYPE_BASE_JOB_ENTRY: // Create a new Job Entry on the canvas JobEntryCopy jge = spoon.newJobEntry(jobMeta, entry, false); if (jge != null) { PropsUI.setLocation(jge, p.x, p.y); jge.setDrawn(); redraw(); // See if we want to draw a tool tip explaining how to create new hops... // if (jobMeta.nrJobEntries() > 1 && jobMeta.nrJobEntries() < 5 && spoon.props.isShowingHelpToolTips()) { showHelpTip(p.x, p.y, BaseMessages.getString(PKG, "JobGraph.HelpToolTip.CreatingHops.Title"), BaseMessages.getString(PKG, "JobGraph.HelpToolTip.CreatingHops.Message")); } } break; case DragAndDropContainer.TYPE_JOB_ENTRY: // Drag existing one onto the canvas jge = jobMeta.findJobEntry(entry, 0, true); if (jge != null) { // Create duplicate of existing entry // There can be only 1 start! if (jge.isStart() && jge.isDrawn()) { showOnlyStartOnceMessage(shell); return; } boolean jge_changed = false; // For undo : JobEntryCopy before = (JobEntryCopy) jge.clone_deep(); JobEntryCopy newjge = jge; if (jge.isDrawn()) { newjge = (JobEntryCopy) jge.clone(); if (newjge != null) { // newjge.setEntry(jge.getEntry()); if (log.isDebug()) { log.logDebug("entry aft = " + ((Object) jge.getEntry()).toString()); } newjge.setNr(jobMeta.findUnusedNr(newjge.getName())); jobMeta.addJobEntry(newjge); spoon.addUndoNew(jobMeta, new JobEntryCopy[] { newjge }, new int[] { jobMeta.indexOfJobEntry(newjge) }); } else { if (log.isDebug()) { log.logDebug("jge is not cloned!"); } } } else { if (log.isDebug()) { log.logDebug(jge.toString() + " is not drawn"); } jge_changed = true; } PropsUI.setLocation(newjge, p.x, p.y); newjge.setDrawn(); if (jge_changed) { spoon.addUndoChange(jobMeta, new JobEntryCopy[] { before }, new JobEntryCopy[] { newjge }, new int[] { jobMeta.indexOfJobEntry(newjge) }); } redraw(); spoon.refreshTree(); log.logBasic("DropTargetEvent", "DROP " + newjge.toString() + "!, type=" + newjge.getEntry().getPluginId()); } else { log.logError("Unknown job entry dropped onto the canvas."); } break; default: break; } } catch (Exception e) { new ErrorDialog(shell, BaseMessages.getString(PKG, "JobGraph.Dialog.ErrorDroppingObject.Message"), BaseMessages.getString(PKG, "JobGraph.Dialog.ErrorDroppingObject.Title"), e); } } public void dropAccept(DropTargetEvent event) { drop_candidate = null; } }); canvas.addKeyListener(this); setBackground(GUIResource.getInstance().getColorBackground()); setControlStates(); // Add a timer to set correct the state of the run/stop buttons every 2 seconds... // final Timer timer = new Timer("JobGraph.setControlStates Timer: " + getMeta().getName()); TimerTask timerTask = new TimerTask() { public void run() { try { setControlStates(); } catch (KettleRepositoryLostException krle) { if (log.isBasic()) { log.logBasic(krle.getLocalizedMessage()); } } } }; timer.schedule(timerTask, 2000, 1000); // Make sure the timer stops when we close the tab... // addDisposeListener(new DisposeListener() { public void widgetDisposed(DisposeEvent arg0) { timer.cancel(); } }); }
From source file:org.pentaho.di.ui.spoon.trans.TransGraph.java
License:Apache License
public TransGraph(Composite parent, final Spoon spoon, final TransMeta transMeta) { super(parent, SWT.NONE); this.shell = parent.getShell(); this.spoon = spoon; this.transMeta = transMeta; this.areaOwners = new ArrayList<>(); this.log = spoon.getLog(); spoon.clearSearchFilter();/*from w w w . j ava2s . c o m*/ this.mouseOverSteps = new ArrayList<>(); this.delayTimers = new HashMap<>(); transLogDelegate = new TransLogDelegate(spoon, this); transGridDelegate = new TransGridDelegate(spoon, this); transHistoryDelegate = new TransHistoryDelegate(spoon, this); transPerfDelegate = new TransPerfDelegate(spoon, this); transMetricsDelegate = new TransMetricsDelegate(spoon, this); transPreviewDelegate = new TransPreviewDelegate(spoon, this); stepListeners = new ArrayList<>(); try { KettleXulLoader loader = new KettleXulLoader(); loader.setIconsSize(16, 16); loader.setSettingsManager(XulSpoonSettingsManager.getInstance()); ResourceBundle bundle = new XulSpoonResourceBundle(Spoon.class); XulDomContainer container = loader.loadXul(XUL_FILE_TRANS_TOOLBAR, bundle); container.addEventHandler(this); SpoonPluginManager.getInstance().applyPluginsForContainer("trans-graph", xulDomContainer); setXulDomContainer(container); } catch (XulException e1) { log.logError("Error loading XUL resource bundle for Spoon", e1); } setLayout(new FormLayout()); setLayoutData(new GridData(GridData.FILL_BOTH)); // Add a tool-bar at the top of the tab // The form-data is set on the native widget automatically // addToolBar(); setControlStates(); // enable / disable the icons in the toolbar too. // The main composite contains the graph view, but if needed also // a view with an extra tab containing log, etc. // mainComposite = new Composite(this, SWT.NONE); mainComposite.setLayout(new FillLayout()); // Nick's fix below ------- Control toolbarControl = (Control) toolbar.getManagedObject(); FormData toolbarFd = new FormData(); toolbarFd.left = new FormAttachment(0, 0); toolbarFd.right = new FormAttachment(100, 0); toolbarControl.setLayoutData(toolbarFd); toolbarControl.setParent(this); // ------------------------ FormData fdMainComposite = new FormData(); fdMainComposite.left = new FormAttachment(0, 0); fdMainComposite.top = new FormAttachment((Control) toolbar.getManagedObject(), 0); fdMainComposite.right = new FormAttachment(100, 0); fdMainComposite.bottom = new FormAttachment(100, 0); mainComposite.setLayoutData(fdMainComposite); // To allow for a splitter later on, we will add the splitter here... // sashForm = new SashForm(mainComposite, SWT.VERTICAL); // Add a canvas below it, use up all space initially // canvas = new Canvas(sashForm, SWT.V_SCROLL | SWT.H_SCROLL | SWT.NO_BACKGROUND | SWT.BORDER); sashForm.setWeights(new int[] { 100, }); try { // first get the XML document menuMap.put("trans-graph-hop", (XulMenupopup) getXulDomContainer().getDocumentRoot().getElementById("trans-graph-hop")); menuMap.put("trans-graph-entry", (XulMenupopup) getXulDomContainer().getDocumentRoot().getElementById("trans-graph-entry")); menuMap.put("trans-graph-background", (XulMenupopup) getXulDomContainer().getDocumentRoot().getElementById("trans-graph-background")); menuMap.put("trans-graph-note", (XulMenupopup) getXulDomContainer().getDocumentRoot().getElementById("trans-graph-note")); } catch (Throwable t) { log.logError("Error parsing XUL XML", t); } toolTip = new DefaultToolTip(canvas, ToolTip.NO_RECREATE, true); toolTip.setRespectMonitorBounds(true); toolTip.setRespectDisplayBounds(true); toolTip.setPopupDelay(350); toolTip.setHideDelay(TOOLTIP_HIDE_DELAY_SHORT); toolTip.setShift(new org.eclipse.swt.graphics.Point(ConstUI.TOOLTIP_OFFSET, ConstUI.TOOLTIP_OFFSET)); helpTip = new CheckBoxToolTip(canvas); helpTip.addCheckBoxToolTipListener(new CheckBoxToolTipListener() { @Override public void checkBoxSelected(boolean enabled) { spoon.props.setShowingHelpToolTips(enabled); } }); iconsize = spoon.props.getIconSize(); clearSettings(); remarks = new ArrayList<>(); impact = new ArrayList<>(); impactFinished = false; hori = canvas.getHorizontalBar(); vert = canvas.getVerticalBar(); hori.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { redraw(); } }); vert.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { redraw(); } }); hori.setThumb(100); vert.setThumb(100); hori.setVisible(true); vert.setVisible(true); setVisible(true); newProps(); canvas.setBackground(GUIResource.getInstance().getColorBackground()); canvas.addPaintListener(new PaintListener() { @Override public void paintControl(PaintEvent e) { if (!spoon.isStopped()) { TransGraph.this.paintControl(e); } } }); selectedSteps = null; lastclick = null; /* * Handle the mouse... */ canvas.addMouseListener(this); canvas.addMouseMoveListener(this); canvas.addMouseTrackListener(this); canvas.addMouseWheelListener(this); canvas.addKeyListener(this); // Drag & Drop for steps Transfer[] ttypes = new Transfer[] { XMLTransfer.getInstance() }; DropTarget ddTarget = new DropTarget(canvas, DND.DROP_MOVE); ddTarget.setTransfer(ttypes); ddTarget.addDropListener(new DropTargetListener() { @Override public void dragEnter(DropTargetEvent event) { clearSettings(); drop_candidate = PropsUI.calculateGridPosition(getRealPosition(canvas, event.x, event.y)); redraw(); } @Override public void dragLeave(DropTargetEvent event) { drop_candidate = null; redraw(); } @Override public void dragOperationChanged(DropTargetEvent event) { } @Override public void dragOver(DropTargetEvent event) { drop_candidate = PropsUI.calculateGridPosition(getRealPosition(canvas, event.x, event.y)); redraw(); } @Override public void drop(DropTargetEvent event) { // no data to copy, indicate failure in event.detail if (event.data == null) { event.detail = DND.DROP_NONE; return; } // System.out.println("Dropping a step!!"); // What's the real drop position? Point p = getRealPosition(canvas, event.x, event.y); // // We expect a Drag and Drop container... (encased in XML) try { DragAndDropContainer container = (DragAndDropContainer) event.data; StepMeta stepMeta = null; boolean newstep = false; switch (container.getType()) { // Put an existing one on the canvas. case DragAndDropContainer.TYPE_STEP: // Drop hidden step onto canvas.... stepMeta = transMeta.findStep(container.getData()); if (stepMeta != null) { if (stepMeta.isDrawn() || transMeta.isStepUsedInTransHops(stepMeta)) { modalMessageDialog(getString("TransGraph.Dialog.StepIsAlreadyOnCanvas.Title"), getString("TransGraph.Dialog.StepIsAlreadyOnCanvas.Message"), SWT.OK); return; } // This step gets the drawn attribute and position set below. } else { // Unknown step dropped: ignore this to be safe! return; } break; // Create a new step case DragAndDropContainer.TYPE_BASE_STEP_TYPE: // Not an existing step: data refers to the type of step to create String id = container.getId(); String name = container.getData(); stepMeta = spoon.newStep(transMeta, id, name, name, false, true); if (stepMeta != null) { newstep = true; } else { return; // Cancelled pressed in dialog or unable to create step. } break; // Create a new TableInput step using the selected connection... case DragAndDropContainer.TYPE_DATABASE_CONNECTION: newstep = true; String connectionName = container.getData(); TableInputMeta tii = new TableInputMeta(); tii.setDatabaseMeta(transMeta.findDatabase(connectionName)); PluginRegistry registry = PluginRegistry.getInstance(); String stepID = registry.getPluginId(StepPluginType.class, tii); PluginInterface stepPlugin = registry.findPluginWithId(StepPluginType.class, stepID); String stepName = transMeta.getAlternativeStepname(stepPlugin.getName()); stepMeta = new StepMeta(stepID, stepName, tii); if (spoon.editStep(transMeta, stepMeta) != null) { transMeta.addStep(stepMeta); spoon.refreshTree(); spoon.refreshGraph(); } else { return; } break; // Drag hop on the canvas: create a new Hop... case DragAndDropContainer.TYPE_TRANS_HOP: newHop(); return; default: // Nothing we can use: give an error! modalMessageDialog(getString("TransGraph.Dialog.ItemCanNotBePlacedOnCanvas.Title"), getString("TransGraph.Dialog.ItemCanNotBePlacedOnCanvas.Message"), SWT.OK); return; } transMeta.unselectAll(); StepMeta before = null; if (!newstep) { before = (StepMeta) stepMeta.clone(); } stepMeta.drawStep(); stepMeta.setSelected(true); PropsUI.setLocation(stepMeta, p.x, p.y); if (newstep) { spoon.addUndoNew(transMeta, new StepMeta[] { stepMeta }, new int[] { transMeta.indexOfStep(stepMeta) }); } else { spoon.addUndoChange(transMeta, new StepMeta[] { before }, new StepMeta[] { (StepMeta) stepMeta.clone() }, new int[] { transMeta.indexOfStep(stepMeta) }); } canvas.forceFocus(); redraw(); // See if we want to draw a tool tip explaining how to create new hops... // if (newstep && transMeta.nrSteps() > 1 && transMeta.nrSteps() < 5 && spoon.props.isShowingHelpToolTips()) { showHelpTip(p.x, p.y, BaseMessages.getString(PKG, "TransGraph.HelpToolTip.CreatingHops.Title"), BaseMessages.getString(PKG, "TransGraph.HelpToolTip.CreatingHops.Message")); } } catch (Exception e) { new ErrorDialog(shell, BaseMessages.getString(PKG, "TransGraph.Dialog.ErrorDroppingObject.Message"), BaseMessages.getString(PKG, "TransGraph.Dialog.ErrorDroppingObject.Title"), e); } } @Override public void dropAccept(DropTargetEvent event) { } }); setBackground(GUIResource.getInstance().getColorBackground()); // Add a timer to set correct the state of the run/stop buttons every 2 seconds... // final Timer timer = new Timer("TransGraph.setControlStates Timer: " + getMeta().getName()); TimerTask timerTask = new TimerTask() { @Override public void run() { try { setControlStates(); } catch (KettleRepositoryLostException krle) { if (log.isBasic()) { log.logBasic(krle.getLocalizedMessage()); } } } }; timer.schedule(timerTask, 2000, 1000); // Make sure the timer stops when we close the tab... // addDisposeListener(new DisposeListener() { @Override public void widgetDisposed(DisposeEvent arg0) { timer.cancel(); } }); }
From source file:org.robotframework.ide.eclipse.main.plugin.project.editor.libraries.PathsFormFragment.java
License:Apache License
private RowExposingTableViewer createViewer(final Composite parent, final ViewerConfiguration config) { final RowExposingTableViewer viewer = new RowExposingTableViewer(parent, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); CellsActivationStrategy.addActivationStrategy(viewer, RowTabbingStrategy.MOVE_TO_NEXT); ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE); GridDataFactory.fillDefaults().grab(true, true).indent(10, 0).minSize(100, 100).applyTo(viewer.getTable()); viewer.setUseHashlookup(true);/*w w w. jav a 2s . c om*/ viewer.getTable().setEnabled(false); viewer.getTable().setLinesVisible(false); viewer.getTable().setHeaderVisible(false); viewer.setContentProvider(new PathsContentProvider(config.getVariableName(), editorInput.isEditable())); ViewersConfigurator.enableDeselectionPossibility(viewer); ViewersConfigurator.disableContextMenuOnHeader(viewer); Viewers.boundViewerWithContext(viewer, site, config.getContextId()); return viewer; }
From source file:org.robotframework.ide.eclipse.main.plugin.project.editor.libraries.ReferencedLibrariesFormFragment.java
License:Apache License
private void createViewer(final Composite parent) { viewer = new RowExposingTableViewer(parent, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); CellsActivationStrategy.addActivationStrategy(viewer, RowTabbingStrategy.MOVE_TO_NEXT); ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE); GridDataFactory.fillDefaults().grab(true, true).span(1, 4).indent(0, 10).applyTo(viewer.getTable()); viewer.setUseHashlookup(true);//from w ww . j a v a 2 s . c o m viewer.getTable().setEnabled(false); viewer.getTable().setLinesVisible(false); viewer.getTable().setHeaderVisible(false); viewer.setContentProvider(new ReferencedLibrariesContentProvider()); ViewersConfigurator.enableDeselectionPossibility(viewer); ViewersConfigurator.disableContextMenuOnHeader(viewer); Viewers.boundViewerWithContext(viewer, site, CONTEXT_ID); }
From source file:org.robotframework.ide.eclipse.main.plugin.project.editor.validation.ProjectValidationFormFragment.java
License:Apache License
private void createViewer(final Composite parent) { viewer = new RowExposingTreeViewer(parent, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); CellsActivationStrategy.addActivationStrategy(viewer, RowTabbingStrategy.MOVE_TO_NEXT); ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE); GridDataFactory.fillDefaults().grab(true, true).indent(0, 10).applyTo(viewer.getTree()); viewer.setUseHashlookup(true);//from w w w . ja v a 2 s . c o m viewer.setAutoExpandLevel(2); viewer.getTree().setEnabled(false); viewer.setComparator(new ViewerSorter()); viewer.setContentProvider(new WorkbenchContentProvider()); ViewersConfigurator.enableDeselectionPossibility(viewer); ViewersConfigurator.disableContextMenuOnHeader(viewer); Viewers.boundViewerWithContext(viewer, site, CONTEXT_ID); }
From source file:org.robotframework.ide.eclipse.main.plugin.project.editor.variables.VariableFilesFormFragment.java
License:Apache License
private void createViewer(final Composite parent) { viewer = new RowExposingTableViewer(parent, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); CellsActivationStrategy.addActivationStrategy(viewer, RowTabbingStrategy.MOVE_TO_NEXT); ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE); GridDataFactory.fillDefaults().grab(true, true).indent(0, 10).applyTo(viewer.getTable()); viewer.setUseHashlookup(true);//ww w .j av a2s . c o m viewer.getTable().setEnabled(false); viewer.getTable().setLinesVisible(true); viewer.getTable().setHeaderVisible(true); viewer.setContentProvider(new VariableFilesContentProvider()); ViewersConfigurator.enableDeselectionPossibility(viewer); ViewersConfigurator.disableContextMenuOnHeader(viewer); Viewers.boundViewerWithContext(viewer, site, CONTEXT_ID); }
From source file:org.spotter.eclipse.ui.viewers.ExtensionsGroupViewer.java
License:Apache License
/** * Create a table viewer under the given parent. Initializes the viewer with * the given input. Uses SpotterExtensionsContentProvider as content * provider and SpotterExtensionsLabelProvider as label provider. * /*from w w w. j a v a 2 s . co m*/ * @param parent * The parent composite. Must not be <code>null</code>. * @param input * The input of the viewer. Must not be <code>null</code>. * * @return the created table viewer * * @see SpotterExtensionsContentProvider * @see SpotterExtensionsLabelProvider */ public static TableViewer createTableViewer(Composite parent, ExtensionItem input) { if (parent == null) { throw new IllegalArgumentException("parent must not be null"); } if (input == null) { throw new IllegalArgumentException("input must not be null"); } // configure table layout Composite tblExtensionsComp = new Composite(parent, SWT.NONE); tblExtensionsComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); TableColumnLayout tblExtensionsColLayout = new TableColumnLayout(); tblExtensionsComp.setLayout(tblExtensionsColLayout); // create table Table table = new Table(tblExtensionsComp, VIEWER_CONTROL_STYLE); table.setHeaderVisible(false); table.setLinesVisible(false); // create viewer for table TableViewer tableViewer = new TableViewer(table); ColumnViewerToolTipSupport.enableFor(tableViewer, ToolTip.NO_RECREATE); TableViewerColumn extensionsColumn = new TableViewerColumn(tableViewer, SWT.NONE); tblExtensionsColLayout.setColumnData(extensionsColumn.getColumn(), new ColumnWeightData(1)); tableViewer.setContentProvider(new SpotterExtensionsContentProvider()); tableViewer.setLabelProvider(new SpotterExtensionsLabelProvider()); tableViewer.setInput(input); return tableViewer; }