List of usage examples for org.eclipse.jface.preference PreferenceDialog open
public int open()
From source file:org.eclipse.cdt.debug.ui.breakpoints.CBreakpointPropertyDialogAction.java
License:Open Source License
public void run() { CBreakpointContext bpContext = getCBreakpointContext(); if (bpContext != null) { PreferenceDialog dialog = createDialog(bpContext); if (dialog != null) { TreeViewer viewer = dialog.getTreeViewer(); if (viewer != null) { viewer.setComparator(new ViewerComparator() { @Override//from w ww .j a va 2s.c om public int category(Object element) { if (element instanceof IPreferenceNode) { IPreferenceNode node = (IPreferenceNode) element; if (PAGE_ID_COMMON.equals(node.getId())) { return 0; } else if (node.getSubNodes() == null || node.getSubNodes().length == 0) { // Pages without children (not categories) return super.category(element) + 1; } } // Categories last. return super.category(element) + 2; } }); // Expand all categories viewer.expandToLevel(TreeViewer.ALL_LEVELS); } dialog.open(); } } }
From source file:org.eclipse.cdt.debug.ui.memory.floatingpoint.FPRenderingPreferenceAction.java
License:Open Source License
protected void showPreferencePage(String id, IPreferencePage page) { final IPreferenceNode targetNode = new PreferenceNode(id, page); PreferenceManager manager = new PreferenceManager(); manager.addToRoot(targetNode);//from ww w . j a va 2s . c o m final PreferenceDialog dialog = new PreferenceDialog(FPRenderingPlugin.getShell(), manager); final boolean[] result = new boolean[] { false }; BusyIndicator.showWhile(FPRenderingPlugin.getStandardDisplay(), new Runnable() { @Override public void run() { dialog.create(); dialog.setMessage(targetNode.getLabelText()); result[0] = (dialog.open() == Window.OK); } }); }
From source file:org.eclipse.cdt.debug.ui.memory.traditional.TraditionalRenderingPreferenceAction.java
License:Open Source License
protected void showPreferencePage(String id, IPreferencePage page) { final IPreferenceNode targetNode = new PreferenceNode(id, page); PreferenceManager manager = new PreferenceManager(); manager.addToRoot(targetNode);/*from w ww. j ava 2 s . c o m*/ final PreferenceDialog dialog = new PreferenceDialog(TraditionalRenderingPlugin.getShell(), manager); final boolean[] result = new boolean[] { false }; BusyIndicator.showWhile(TraditionalRenderingPlugin.getStandardDisplay(), new Runnable() { public void run() { dialog.create(); dialog.setMessage(targetNode.getLabelText()); result[0] = (dialog.open() == Window.OK); } }); }
From source file:org.eclipse.cdt.embsysregview.views.EmbSysRegView.java
License:Open Source License
/** * This is a callback that creates the viewer and initialize it. *//*from ww w.j ava2 s .c o m*/ public void createPartControl(final Composite parent) { Bundle bundle = Platform.getBundle("org.eclipse.cdt.embsysregview"); URL fileURL = bundle.getEntry("icons/selected_register.png"); URL fileURL2 = bundle.getEntry("icons/unselected_register.png"); URL fileURL3 = bundle.getEntry("icons/selected_field.png"); URL fileURL4 = bundle.getEntry("icons/unselected_field.png"); URL fileURL5 = bundle.getEntry("icons/info.png"); URL fileURL6 = bundle.getEntry("icons/interpretation.png"); URL fileURL7 = bundle.getEntry("icons/config.png"); try { selectedImage = new Image(parent.getDisplay(), fileURL.openStream()); unselectedImage = new Image(parent.getDisplay(), fileURL2.openStream()); selectedFieldImage = new Image(parent.getDisplay(), fileURL3.openStream()); unselectedFieldImage = new Image(parent.getDisplay(), fileURL4.openStream()); infoImage = new Image(parent.getDisplay(), fileURL5.openStream()); interpretationImage = new Image(parent.getDisplay(), fileURL6.openStream()); configButtonImage = new Image(parent.getDisplay(), fileURL7.openStream()); } catch (Exception e) { selectedImage = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_DEC_FIELD_ERROR); unselectedImage = PlatformUI.getWorkbench().getSharedImages() .getImage(ISharedImages.IMG_DEC_FIELD_ERROR); selectedFieldImage = PlatformUI.getWorkbench().getSharedImages() .getImage(ISharedImages.IMG_DEC_FIELD_ERROR); unselectedFieldImage = PlatformUI.getWorkbench().getSharedImages() .getImage(ISharedImages.IMG_DEC_FIELD_ERROR); infoImage = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_DEC_FIELD_ERROR); interpretationImage = PlatformUI.getWorkbench().getSharedImages() .getImage(ISharedImages.IMG_DEC_FIELD_ERROR); configButtonImage = PlatformUI.getWorkbench().getSharedImages() .getImage(ISharedImages.IMG_DEC_FIELD_ERROR); } TreeViewerColumn column; parent.setLayout(new MigLayout("fill", "", "")); header = new Composite(parent, SWT.NONE); /*header.setLayout(new MigLayout("fill","",""));*/ header.setLayoutData("dock north,height 16px,width 100%,wmin 0,hmin 16,gap 0 0 -5 0"); RowLayout rowLayout = new RowLayout(SWT.HORIZONTAL); rowLayout.marginLeft = -1; rowLayout.marginRight = 0; rowLayout.marginTop = -1; rowLayout.marginBottom = 0; rowLayout.fill = true; rowLayout.wrap = false; rowLayout.spacing = 5; header.setLayout(rowLayout); configButton = new Button(header, SWT.FLAT); configButton.setImage(configButtonImage); configButton.setSize(17, 17); RowData data = new RowData(); data.width = 17; data.height = 17; configButton.setLayoutData(data); configButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { if (e.type == SWT.Selection) { IPreferencePage page = new PreferencePageEmbSys(); page.setTitle("EmbSysRegView"); IPreferencePage page2 = new PreferencePageEmbSysBehavior(); page2.setTitle("Behavior"); PreferenceManager mgr = new PreferenceManager(); IPreferenceNode node = new PreferenceNode("1", page); node.add(new PreferenceNode("2", page2)); mgr.addToRoot(node); PreferenceDialog dialog = new PreferenceDialog( PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), mgr); dialog.create(); dialog.setMessage(page.getTitle()); dialog.open(); } } }); collapseButton = new Button(header, SWT.FLAT); collapseButton.setLayoutData(new RowData(17, 17)); collapseButton .setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_ELCL_COLLAPSEALL)); collapseButton.setToolTipText("Collapse all open tree nodes"); collapseButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { if (e.type == SWT.Selection) { viewer.collapseAll(); } } }); activateAllButton = new Button(header, SWT.FLAT); activateAllButton.setLayoutData(new RowData(17, 17)); activateAllButton.setText("*"); // Not very clear, should/could be some custom graphics featuring the color green, perhaps? activateAllButton.setToolTipText( "Activate all registers (or none, if Control is pressed); press Shift to only affect visible registers"); activateAllButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { if (e.type == SWT.Selection) { activateAll((e.stateMask & SWT.CONTROL) == 0, (e.stateMask & SWT.SHIFT) != 0); } } }); copyButton = new Button(header, SWT.FLAT); copyButton.setLayoutData(new RowData(17, 17)); copyButton.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_TOOL_COPY)); copyButton.setToolTipText("Copy active (green) register values to clipboard"); copyButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { if (e.type == SWT.Selection) { final StringBuilder sb = new StringBuilder(); copyRegisters(sb); if (sb.length() > 0) { final Clipboard cb = new Clipboard(Display.getCurrent()); final TextTransfer tt = TextTransfer.getInstance(); cb.setContents(new Object[] { sb.toString() }, new Transfer[] { tt }); } } } }); infoLabel = new Label(header, SWT.NONE); viewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION); viewer.getControl().setLayoutData("height 100%,width 100%,hmin 0,wmin 0"); viewer.getTree().setLinesVisible(true); viewer.getTree().setHeaderVisible(true); // Registername column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(250); column.getColumn().setMoveable(false); column.getColumn().setText("Register"); column.setLabelProvider(new ColumnLabelProvider() { @Override public Color getForeground(Object element) { if (element instanceof TreeRegister) if (((TreeRegister) element).isRetrievalActive()) return parent.getShell().getDisplay().getSystemColor(SWT.COLOR_DARK_GREEN); if (element instanceof TreeField) if (((TreeRegister) ((TreeField) element).getParent()).isRetrievalActive()) return parent.getShell().getDisplay().getSystemColor(SWT.COLOR_DARK_GREEN); return null; } public String getText(Object element) { if (element instanceof TreeField) { final int bitOffset = ((TreeField) element).getBitOffset(); final int bitLength = ((TreeField) element).getBitLength(); if (bitLength == 1) return element.toString() + " (bit " + String.valueOf(bitOffset) + ")"; else return element.toString() + " (bits " + String.valueOf(bitOffset + bitLength - 1) + "-" + String.valueOf(bitOffset) + ")"; } else return element.toString(); } public Image getImage(Object obj) { if (obj instanceof TreeParent) { if (obj instanceof TreeRegister) if (((TreeRegister) obj).isRetrievalActive()) return selectedImage; else return unselectedImage; } if (obj instanceof TreeField) { if (((TreeRegister) ((TreeField) obj).getParent()).isRetrievalActive()) return selectedFieldImage; else return unselectedFieldImage; } return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER); } }); // Hex Value column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(80); column.getColumn().setMoveable(false); column.getColumn().setText("Hex"); column.setLabelProvider(new ColumnLabelProvider() { @Override public Color getForeground(Object element) { if (element instanceof TreeRegister) if (!((TreeRegister) element).isWriteOnly()) if (((TreeRegister) element).hasValueChanged()) return parent.getShell().getDisplay().getSystemColor(SWT.COLOR_RED); if (element instanceof TreeField) if (!((TreeRegister) ((TreeField) element).getParent()).isWriteOnly()) if (((TreeField) element).hasValueChanged()) return parent.getShell().getDisplay().getSystemColor(SWT.COLOR_RED); return null; } public String getText(Object element) { if (element instanceof TreeGroup) return ""; if (element instanceof TreeRegisterGroup) return ""; if (element instanceof TreeRegister) if (((TreeRegister) element).getValue() == -1) return ""; else if (((TreeRegister) element).isWriteOnly()) return "- write only -"; else return Utils.longtoHexString(((TreeRegister) element).getValue(), ((TreeRegister) element).getBitSize()); if (element instanceof TreeField) if (((TreeRegister) ((TreeField) element).getParent()).getValue() == -1) return ""; else if (((TreeRegister) ((TreeField) element).getParent()).isWriteOnly()) return "- write only -"; else return Utils.longtoHexString(((TreeField) element).getValue(), ((TreeField) element).getBitLength()); else return element.toString(); } }); final TextCellEditor textCellEditor = new TextCellEditor(viewer.getTree()); textCellEditor.setValidator(new HexCellEditorValidator(viewer)); final ComboBoxCellEditor comboBoxCellEditor = new ComboBoxCellEditor(viewer.getTree(), new String[0], SWT.NONE); comboBoxCellEditor.setValidator(new HexCellEditorValidator(viewer)); ((CCombo) comboBoxCellEditor.getControl()).addSelectionListener(new SelectionListener() { @Override public void widgetSelected(SelectionEvent e) { int selectionIndex = ((CCombo) comboBoxCellEditor.getControl()).getSelectionIndex(); TreeElement obj = currentEditedElement; if (obj instanceof TreeField) { long value = -1; if (selectionIndex != -1) { value = ((TreeField) obj).getInterpretations() .getValue(((CCombo) comboBoxCellEditor.getControl()).getItem(selectionIndex)); } else { String svalue = ((CCombo) comboBoxCellEditor.getControl()).getText(); if (svalue.startsWith("0x")) value = Long.valueOf(svalue.substring(2, svalue.length()), 16); } if (value != -1) ((TreeField) obj).setValue(value); } if (((TreeRegister) obj.getParent()).isWriteOnly()) updateTreeFields(invisibleRoot); viewer.refresh(); } @Override public void widgetDefaultSelected(SelectionEvent e) { } }); comboBoxCellEditor.addListener(new ICellEditorListener() { @Override public void applyEditorValue() { int selectionIndex = ((CCombo) comboBoxCellEditor.getControl()).getSelectionIndex(); TreeElement obj = currentEditedElement; if (obj instanceof TreeField) { long value = -1; if (selectionIndex != -1) { value = ((TreeField) obj).getInterpretations() .getValue(((CCombo) comboBoxCellEditor.getControl()).getItem(selectionIndex)); } else { String svalue = ((CCombo) comboBoxCellEditor.getControl()).getText(); if (svalue.startsWith("0x")) value = Long.valueOf(svalue.substring(2, svalue.length()), 16); } if (value != -1) ((TreeField) obj).setValue(value); } if (((TreeRegister) obj.getParent()).isWriteOnly()) updateTreeFields(invisibleRoot); viewer.refresh(); } @Override public void cancelEditor() { } @Override public void editorValueChanged(boolean oldValidState, boolean newValidState) { } }); column.setEditingSupport(new EditingSupport(viewer) { @Override protected boolean canEdit(Object element) { if (element instanceof TreeField && ((((TreeRegister) ((TreeField) element).getParent()).isReadWrite()) || (((TreeRegister) ((TreeField) element).getParent()).isWriteOnly()))) return true; if (element instanceof TreeRegister && (((TreeRegister) element).isReadWrite() || ((TreeRegister) element).isWriteOnly())) return true; return false; } @Override protected CellEditor getCellEditor(Object element) { if (element instanceof TreeField && ((TreeField) element).hasInterpretations()) { comboBoxCellEditor.setItems(((TreeField) element).getInterpretations().getInterpretations()); IPreferenceStore store = Activator.getDefault().getPreferenceStore(); int store_combolength = store.getInt("combolength"); if (store_combolength > 0) ((CCombo) comboBoxCellEditor.getControl()).setVisibleItemCount(store_combolength); currentEditedElement = (TreeElement) element; return comboBoxCellEditor; } else return textCellEditor; } @Override protected Object getValue(Object element) { if (element instanceof TreeField && ((TreeField) element).hasInterpretations()) { // TODO: check if the Integer is for index in the combobox return new Integer((int) ((TreeField) element).getValue()); // TODO: what to do on large bitfield ? } else { if (element instanceof TreeField && ((TreeField) element).getValue() != -1) return Utils.longtoHexString(((TreeField) element).getValue(), ((TreeField) element).getBitLength()); if (element instanceof TreeRegister && ((TreeRegister) element).getValue() != -1) return Utils.longtoHexString(((TreeRegister) element).getValue(), ((TreeRegister) element).getBitSize()); } return null; } @Override protected void setValue(Object element, Object value) { if (value == null) return; if (value instanceof String) { if (element instanceof TreeRegister && ((String) value).startsWith("0x")) { String svalue = ((String) value); long lvalue = Long.valueOf(svalue.substring(2, svalue.length()), 16); TreeRegister treeRegister = ((TreeRegister) element); if (treeRegister.getValue() != -1 && treeRegister.getValue() != lvalue) { // Update Value on device treeRegister.setAndWriteValue(lvalue); if (((TreeRegister) element).isWriteOnly()) updateTreeFields(invisibleRoot); viewer.refresh(); } } if (element instanceof TreeField && ((String) value).startsWith("0x")) { String svalue = ((String) value); long fvalue = Long.valueOf(svalue.substring(2, svalue.length()), 16); TreeField treeField = ((TreeField) element); if (treeField.getValue() != -1 && treeField.getValue() != fvalue) { TreeRegister treeRegister = ((TreeRegister) treeField.getParent()); // calculate register value + modified field to write into register long rvalue = treeRegister.getValue(); int bitLength = treeField.getBitLength(); int bitOffset = treeField.getBitOffset(); long mask; mask = (0xFFFFFFFFL >> (32 - bitLength)) << bitOffset; rvalue = rvalue & (~mask); // clear field bits in register value fvalue = fvalue << bitOffset; // shift field value into its position in the register fvalue = fvalue & mask; // just to be sure, cut everything but the field rvalue = rvalue | fvalue; // blend the field value into the register value // Update Value in Target treeRegister.setAndWriteValue(rvalue); if (((TreeRegister) (((TreeField) element).getParent())).isWriteOnly()) updateTreeFields(invisibleRoot); viewer.refresh(treeRegister); } } } //TODO: why...what for... //viewer.refresh(element); } }); // Binary Value column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(200); column.getColumn().setMoveable(false); column.getColumn().setText("Bin"); column.setLabelProvider(new ColumnLabelProvider() { @Override public Color getForeground(Object element) { if (element instanceof TreeRegister) if (!((TreeRegister) element).isWriteOnly()) if (((TreeRegister) element).hasValueChanged()) return parent.getShell().getDisplay().getSystemColor(SWT.COLOR_RED); if (element instanceof TreeField) if (!((TreeRegister) ((TreeField) element).getParent()).isWriteOnly()) if (((TreeField) element).hasValueChanged()) return parent.getShell().getDisplay().getSystemColor(SWT.COLOR_RED); return null; } public String getText(Object element) { if (element instanceof TreeGroup) return ""; if (element instanceof TreeRegisterGroup) return ""; if (element instanceof TreeRegister) if (((TreeRegister) element).getValue() == -1) return ""; else if (((TreeRegister) element).isWriteOnly()) return "------------- write only -------------"; else return Utils.longtobinarystring(((TreeRegister) element).getValue(), ((TreeRegister) element).getBitSize()); if (element instanceof TreeField) if (((TreeRegister) ((TreeField) element).getParent()).getValue() == -1) return ""; else if (((TreeRegister) ((TreeField) element).getParent()).isWriteOnly()) return "------------- write only -------------"; else return Utils.longtobinarystring(((TreeField) element).getValue(), ((TreeField) element).getBitLength()); else return element.toString(); } }); column.setEditingSupport(new EditingSupport(viewer) { @Override protected boolean canEdit(Object element) { if (element instanceof TreeField && ((((TreeRegister) ((TreeField) element).getParent()).isReadWrite()) || (((TreeRegister) ((TreeField) element).getParent()).isWriteOnly()))) return true; if (element instanceof TreeRegister && (((TreeRegister) element).isReadWrite() || ((TreeRegister) element).isWriteOnly())) return true; return false; } @Override protected CellEditor getCellEditor(Object element) { return new BinaryButtonsCellEditor(viewer.getTree(), viewer); } @Override protected Object getValue(Object element) { return element; } @Override protected void setValue(Object element, Object value) { viewer.refresh(element); } }); // Register Reset Value (hex) column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(80); column.getColumn().setMoveable(false); column.getColumn().setText("Reset"); column.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { if (element instanceof TreeGroup) return ""; if (element instanceof TreeRegisterGroup) return ""; if (element instanceof TreeRegister) return Utils.longtoHexString(((TreeRegister) element).getResetValue(), ((TreeRegister) element).getBitSize()); if (element instanceof TreeField) return ""; else return ""; } }); // Register Access column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setAlignment(SWT.CENTER); column.getColumn().setWidth(50); column.getColumn().setMoveable(false); column.getColumn().setText("Access"); column.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { if (element instanceof TreeGroup) return ""; if (element instanceof TreeRegisterGroup) return ""; if (element instanceof TreeRegister) return ((TreeRegister) element).getType().toUpperCase(); if (element instanceof TreeField) return ""; else return ""; } }); // Register Address (hex) column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(80); column.getColumn().setMoveable(false); column.getColumn().setText("Address"); column.setLabelProvider(new ColumnLabelProvider() { public String getText(Object element) { if (element instanceof TreeGroup) return ""; if (element instanceof TreeRegisterGroup) return ""; if (element instanceof TreeRegister) return Utils.longtoHexString(((TreeRegister) element).getRegisterAddress(), 32); //TODO: get address width from xml ... if (element instanceof TreeField) return ""; else return ""; } }); // Description column = new TreeViewerColumn(viewer, SWT.NONE); column.getColumn().setWidth(300); column.getColumn().setMoveable(false); column.getColumn().setText("Description"); ColumnViewerToolTipSupport.enableFor(viewer); column.setLabelProvider(new CellLabelProvider() { public String getToolTipText(Object element) { if (element instanceof TreeRegister) { // only display if more than one line is found if (org.eclipse.cdt.embsysregview.views.Utils .countTextLines(((TreeRegister) element).getDescription()) > 1) return ((TreeRegister) element).getDescription(); else return null; } if (element instanceof TreeField) { // display tooltip if more than one line is found, or an interpretation is shown instead of this one line if (org.eclipse.cdt.embsysregview.views.Utils .countTextLines(((TreeField) element).getDescription()) > 1 || ((TreeField) element).hasInterpretation()) return ((TreeField) element).getDescription(); else return null; } return null; } public Point getToolTipShift(Object object) { return new Point(5, 5); } public int getToolTipDisplayDelayTime(Object object) { return 200; } public int getToolTipTimeDisplayed(Object object) { return 0; } public void update(ViewerCell cell) { Object element = cell.getElement(); if (element instanceof TreeGroup) cell.setText(((TreeGroup) element).getDescription()); if (element instanceof TreeRegisterGroup) cell.setText(((TreeRegisterGroup) element).getDescription()); if (element instanceof TreeRegister) { cell.setText(org.eclipse.cdt.embsysregview.views.Utils .getFirstNotEmptyTextLine(((TreeRegister) element).getDescription()).trim()); } if (element instanceof TreeField) if (((TreeField) element).hasInterpretation()) { cell.setText(((TreeField) element).getInterpretation()); cell.setImage(interpretationImage); } else { // Display first line cell.setText(org.eclipse.cdt.embsysregview.views.Utils .getFirstNotEmptyTextLine(((TreeField) element).getDescription()).trim()); // Display Icon if there are more than one line if (org.eclipse.cdt.embsysregview.views.Utils .countTextLines(((TreeField) element).getDescription()) > 1) cell.setImage(infoImage); } } }); doubleClickAction = new Action() { public void run() { ISelection selection = viewer.getSelection(); Object obj = ((IStructuredSelection) selection).getFirstElement(); int selectedColumn = -1; Tree tree = viewer.getTree(); Point pt = tree.toControl(Display.getCurrent().getCursorLocation()); viewer.getTree().getColumnCount(); for (int i = 0; i < tree.getColumnCount(); i++) { TreeItem item = tree.getItem(pt); if (item != null) { if (item.getBounds(i).contains(pt)) { selectedColumn = i; } } } if (obj instanceof TreeRegisterGroup && selectedColumn == 0) { TreeRegisterGroup treeRegisterGroup = ((TreeRegisterGroup) obj); TreeElement[] treeElements = treeRegisterGroup.getChildren(); for (TreeElement treeElement : treeElements) { TreeRegister treeRegister = ((TreeRegister) treeElement); if (!treeRegister.isWriteOnly()) { treeRegister.toggleRetrieval(); treeRegister.readValue(); } } viewer.refresh(obj); } if (obj instanceof TreeRegister && selectedColumn == 0) { TreeRegister treeRegister = ((TreeRegister) obj); if (!treeRegister.isWriteOnly()) { treeRegister.toggleRetrieval(); treeRegister.readValue(); viewer.refresh(obj); } } if (obj instanceof TreeField && selectedColumn == 0) { TreeField treeField = ((TreeField) obj); TreeRegister treeRegister = ((TreeRegister) treeField.getParent()); if (!treeRegister.isWriteOnly()) { treeRegister.toggleRetrieval(); treeRegister.readValue(); viewer.refresh(treeField.getParent()); } } } }; viewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { doubleClickAction.run(); } }); viewer.setContentProvider(new ViewContentProvider()); updateInfoLabel(); viewer.setInput(invisibleRoot); }
From source file:org.eclipse.datatools.connectivity.sample.wizards.SampleConnectionWizard.java
License:Open Source License
private Connection getActiveConnection(IConnectionProfile connectionProfile) { Connection activeConnection = null; IManagedConnection connection = null; IStatus connectionStatus = null;//w ww. j a v a 2 s. c o m if (connectionProfile.getConnectionState() == IConnectionProfile.CONNECTED_STATE) { activeConnection = (Connection) connectionProfile.getManagedConnection("java.sql.Connection") .getConnection().getRawConnection(); } else { connectionStatus = connectionProfile.connectWithoutJob(); if (connectionProfile.getConnectionState() == IConnectionProfile.CONNECTED_STATE) { return (Connection) connectionProfile.getManagedConnection("java.sql.Connection").getConnection() .getRawConnection(); } while (connectionProfile.getConnectionState() != IConnectionProfile.CONNECTED_STATE) { // display error message new DisplayMessage(WIZARD_TITLE, connectionStatus.getChildren()[0].getException().getLocalizedMessage()).run(); // Prompt to fix properties PropertyDialogAction propertyDialogAction = new PropertyDialogAction( new SameShellProvider(this.getShell()), new SampleWizardSelectionProvider(connectionProfile)); StructuredSelection selection = new StructuredSelection(connectionProfile); propertyDialogAction.selectionChanged(selection); if (propertyDialogAction.isApplicableForSelection()) { PreferenceDialog dialog = propertyDialogAction.createDialog(); String initialPage = ((ConnectionProfileProvider) connectionProfile.getProvider()) .getPropertiesPersistenceHook().getConnectionPropertiesPageID(); if (initialPage != null) { ((IWorkbenchPreferenceContainer) dialog).openPage(initialPage, null); } if (dialog.open() == Dialog.CANCEL) { return activeConnection; } } connectionStatus = connectionProfile.connectWithoutJob(); connection = connectionProfile.getManagedConnection("java.sql.Connection"); } activeConnection = (Connection) connection.getConnection().getRawConnection(); } return activeConnection; }
From source file:org.eclipse.datatools.connectivity.ui.actions.ConnectAction.java
License:Open Source License
public void run(IAction action) { if (mSelection != null && allProfilesInSelectionAreDisconnected(mSelection)) { List list = mSelection.toList(); if (list == null || list.size() == 0) return; for (int i = 0; i < list.size(); i++) { PropertyDialogAction propertyDialogAction = new PropertyDialogAction(new SameShellProvider(mShell), this); if (list.get(i) instanceof IConnectionProfile) { IConnectionProfile profile = (IConnectionProfile) list.get(i); StructuredSelection ssel = new StructuredSelection(profile); propertyDialogAction.selectionChanged(ssel); if (!profile.arePropertiesComplete() && propertyDialogAction.isApplicableForSelection()) { PreferenceDialog dialog = propertyDialogAction.createDialog(); dialog.getShell()//from w w w. j av a 2 s .co m .setText(ConnectivityUIPlugin.getDefault().getResourceString("ConnectAction.title", //$NON-NLS-1$ new String[] { profile.getName() })); String initialPage = getInitialPropertyPageID(profile); if (initialPage != null) { ((IWorkbenchPreferenceContainer) dialog).openPage(initialPage, null); } if (dialog.open() == Dialog.CANCEL) { return; } } ConnectActionStatusListener listener = new ConnectActionStatusListener(profile); profile.connect(listener); } } } }
From source file:org.eclipse.datatools.connectivity.ui.actions.PingAction.java
License:Open Source License
public void run(IAction action) { PropertyDialogAction propertyDialogAction = new PropertyDialogAction(new SameShellProvider(mParentShell), this); propertyDialogAction.selectionChanged((IStructuredSelection) getSelection()); if (!mConnectionProfile.arePropertiesComplete() && propertyDialogAction.isApplicableForSelection()) { PreferenceDialog dialog = propertyDialogAction.createDialog(); String initialPage = getInitialPropertyPageID(); if (initialPage != null) { ((IWorkbenchPreferenceContainer) dialog).openPage(initialPage, null); }/*from w ww . j a va2 s . co m*/ if (dialog.open() == Dialog.CANCEL) { return; } } new PingJob(mParentShell, mConnectionProfile).schedule(); }
From source file:org.eclipse.datatools.connectivity.ui.actions.ViewPropertyAction.java
License:Open Source License
public void run() { Object selected = getSelectedObject(); PreferenceDialog propertyDialog = ProfileUIManager.createPreferenceDialog(mViewer.getControl().getShell(), selected);//from w w w . ja va2 s.c o m if (propertyDialog == null) return; // check for size settings IDialogSettings dset = ConnectivityUIPlugin.getDefault().getDialogSettings(); boolean foundSettings = false; if (dset != null) { IDialogSettings dSection = dset.getSection(MEMENTO_ROOT); if (dSection != null) { if (dSection.get(MEMENTO_DIALOG_SIZE_HEIGHT) != null && dSection.get(MEMENTO_DIALOG_SIZE_HEIGHT).trim().length() > 0) { mShellHeight = dSection.getInt(MEMENTO_DIALOG_SIZE_HEIGHT); mShellWidth = dSection.getInt(MEMENTO_DIALOG_SIZE_WIDTH); foundSettings = true; } } } // if we found them, set it to the old values if (foundSettings) { propertyDialog.getShell().setSize(mShellWidth, mShellHeight); propertyDialog.getShell().layout(); // if not, initialize 'mShellWidth' and 'mShellHeigth' } else { mShellHeight = propertyDialog.getShell().getSize().y; mShellWidth = propertyDialog.getShell().getSize().x; } this.mShell = propertyDialog.getShell(); String title = ConnectivityUIPlugin.getDefault().getResourceString("properties.dialog"); //$NON-NLS-1$ if (selected instanceof IConnectionProfile) { IConnectionProfile profile = (IConnectionProfile) selected; title = ConnectivityUIPlugin.getDefault().getResourceString("ConnectAction.title", //$NON-NLS-1$ new String[] { profile.getName() }); } propertyDialog.getShell().setText(title); // add a listener to make sure we get any resizes of the dialog // to store for the next time this.mShell.addControlListener(new ControlListener() { public void controlMoved(ControlEvent e) { } public void controlResized(ControlEvent e) { if (e.getSource() instanceof Shell) { Shell shell = (Shell) e.getSource(); ViewPropertyAction.this.mShellHeight = shell.getSize().y; ViewPropertyAction.this.mShellWidth = shell.getSize().x; } } }); // check to see if the profile is in a read-only repository // and if so, disable the controls on each page selected boolean inReadOnlyRepository = false; if (getSelectedObject() instanceof IConnectionProfile) { IConnectionProfile profile = (IConnectionProfile) getSelectedObject(); if (profile.getParentProfile() != null) { IManagedConnection imc = ((IConnectionProfile) profile.getParentProfile()).getManagedConnection( IConnectionProfileRepositoryConstants.REPOSITORY_CONNECTION_FACTORY_ID); if (imc != null && imc.isConnected()) { IConnectionProfileRepository repo = (IConnectionProfileRepository) imc.getConnection() .getRawConnection(); inReadOnlyRepository = repo.isReadOnly(); } } } // handle the initial page selected in the dialog for the // read only repository page disabling... propertyDialog.addPageChangedListener(new PropertyPageChangeListener(inReadOnlyRepository)); if (inReadOnlyRepository && propertyDialog.getSelectedPage() != null) { PropertyPage page = (PropertyPage) propertyDialog.getSelectedPage(); if (propertyDialog.getSelectedPage() instanceof ConnectionProfileDetailsPage || propertyDialog.getSelectedPage() instanceof ProfileDetailsPropertyPage) { if (page.getControl() instanceof Composite) { Composite composite = (Composite) page.getControl(); if (inReadOnlyRepository) disableControls(composite, !inReadOnlyRepository, true); } } else if (propertyDialog.getSelectedPage() instanceof PropertyPage) { if (page.getControl() instanceof Composite) { Composite composite = (Composite) page.getControl(); disableControls(composite, !inReadOnlyRepository); } } } int rtn_val = propertyDialog.open(); if (rtn_val == Dialog.OK) saveState(); mViewer.setSelection(mViewer.getSelection()); }
From source file:org.eclipse.datatools.sqltools.ddlgen.internal.ui.wizards.FEWizard.java
License:Open Source License
private IConnectionProfile getActiveConnection(IConnectionProfile connectionProfile) { IConnectionProfile activeConnection = null; IManagedConnection connection = null; IStatus connectionStatus = null;/*from w w w . j a va 2s. c o m*/ if (connectionProfile.getConnectionState() == IConnectionProfile.CONNECTED_STATE) { activeConnection = connectionProfile.getManagedConnection("java.sql.Connection").getConnection() .getConnectionProfile(); } else { connectionStatus = connectionProfile.connectWithoutJob(); if (connectionProfile.getConnectionState() == IConnectionProfile.CONNECTED_STATE) { return connectionProfile.getManagedConnection("java.sql.Connection").getConnection() .getConnectionProfile(); } while (connectionProfile.getConnectionState() != IConnectionProfile.CONNECTED_STATE) { // display error message new DisplayMessage(ResourceLoader.INSTANCE.queryString("FE_WIZARD_TITLEBAR_TEXT"), connectionStatus.getChildren()[0].getException().getLocalizedMessage()).run(); // Prompt to fix properties PropertyDialogAction propertyDialogAction = new PropertyDialogAction( new SameShellProvider(this.getShell()), new FEWizardSelectionProvider(connectionProfile)); StructuredSelection selection = new StructuredSelection(connectionProfile); propertyDialogAction.selectionChanged(selection); if (propertyDialogAction.isApplicableForSelection()) { PreferenceDialog dialog = propertyDialogAction.createDialog(); String initialPage = ((ConnectionProfileProvider) connectionProfile.getProvider()) .getPropertiesPersistenceHook().getConnectionPropertiesPageID(); if (initialPage != null) { ((IWorkbenchPreferenceContainer) dialog).openPage(initialPage, null); } if (dialog.open() == Dialog.CANCEL) { return activeConnection; } } connectionStatus = connectionProfile.connectWithoutJob(); connection = connectionProfile.getManagedConnection("java.sql.Connection"); } activeConnection = connection.getConnection().getConnectionProfile(); } return activeConnection; }
From source file:org.eclipse.debug.internal.ui.views.memory.MemoryViewPrefAction.java
License:Open Source License
public void run(IAction action) { PreferenceManager prefManager = new PreferenceManager(); ResetMemoryBlockPreferencePage page = new ResetMemoryBlockPreferencePage(); IPreferenceNode node = new PreferenceNode("org.eclipse.debug.ui.memory.resetMemoryBlock", page); //$NON-NLS-1$ prefManager.addToRoot(node);/* ww w.j a va 2 s . c om*/ SetPaddedStringPreferencePage page2 = new SetPaddedStringPreferencePage(); IPreferenceNode node2 = new PreferenceNode("org.eclipse.debug.ui.memory.setPaddedString", page2); //$NON-NLS-1$ prefManager.addToRoot(node2); CodePagesPreferencePage page3 = new CodePagesPreferencePage(); IPreferenceNode node3 = new PreferenceNode("org.eclipse.debug.ui.memory.codePages", page3); //$NON-NLS-1$ prefManager.addToRoot(node3); final PreferenceDialog dialog = new PreferenceDialog(DebugUIPlugin.getShell(), prefManager); BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() { public void run() { dialog.create(); dialog.open(); } }); }