List of usage examples for org.eclipse.jface.preference IPreferenceStore getBoolean
boolean getBoolean(String name);
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.ASTMessageGrouper.java
License:Open Source License
public IMessageGrouping[] calculateGroups2(UMLSequenceViewer viewer, Object activationElement, Object[] children) {//from ww w. ja v a 2s. c om HashMap<ASTMessageGroupingTree, ASTMessageGrouping> groups = new HashMap<ASTMessageGroupingTree, ASTMessageGrouping>(); IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); ArrayList<ASTMessageGrouping> unusedGroups = new ArrayList<ASTMessageGrouper.ASTMessageGrouping>(); boolean compactLoops = store.getBoolean(ISketchPluginPreferences.COMPACT_LOOPS_PREFERENCE); boolean useCombinedFragments = store.getBoolean(ISketchPluginPreferences.DISPLAY_GROUPS_PREFERENCE); if (!useCombinedFragments) { return new IMessageGrouping[0]; } if (activationElement instanceof IActivation) { IActivation parent = (IActivation) activationElement; IProgramSketch sketch = SketchPlugin.getDefault().getSketch(parent); if (sketch != null) { PresentationData pd = PresentationData.connect(sketch); if (pd != null) { try { ASTMessageGroupingTree tree = pd.getGroups(parent); if (tree == null) { return new IMessageGrouping[0]; } LinkedList<ASTMessageGroupingTree> groupStack = new LinkedList<ASTMessageGroupingTree>(); //search through the tree to find all loops groupStack.add(tree); while (groupStack.size() > 0) { ASTMessageGroupingTree node = groupStack.removeFirst(); if (pd.isGroupVisible(parent, node) || (!compactLoops && node.isLoop())) { ASTMessageGrouping g = new ASTMessageGrouping(activationElement, node); g.setOffset(-1); g.setLength(0); groups.put(node, g); unusedGroups.add(g); for (ASTMessageGroupingTree child : node.getChildren()) { groupStack.add(child); } } } int unusedIndex = 0; for (int i = 0; i < children.length; i++) { Object child = children[i]; if (child instanceof IMessage) { ASTMessageGroupingTree node = tree.getMessageContainer((IMessage) child); ASTMessageGrouping grouping = groups.get(node); int messageLineNumber = ((IMessage) child).codeLine(); if (grouping != null) { if (grouping.getOffset() < 0) { //update all the preceding offsets to //be equal to this one. for (int u = unusedIndex; u < unusedGroups.size(); unusedIndex++, u++) { ASTMessageGrouping unused = unusedGroups.get(u); if (unused.node.getFirstCodeLine() <= messageLineNumber) { unused.setOffset(i); } else { unusedIndex = u; break; } } } } //update all the parents for the length while (node != null && node.getParent() != null) { grouping = groups.get(node); if (grouping != null) { grouping.setLength(i - grouping.getOffset() + 1); } node = node.getParent(); } } } for (int i = unusedIndex; i < unusedGroups.size(); i++) { ASTMessageGrouping unused = unusedGroups.get(i); unused.setOffset(children.length); } } finally { pd.disconnect(); } } } } for (Iterator<ASTMessageGrouping> i = unusedGroups.iterator(); i.hasNext();) { ASTMessageGrouping group = i.next(); if (group.node.getNode().getNodeType() == ASTNode.METHOD_DECLARATION) { i.remove(); } else if (group.getLength() <= 0) { //remove non-loop elements if (!group.node.isLoop()) { i.remove(); } else { //walk up the list and remove children of empty //loops ASTMessageGroupingTree parent = group.node.getParent(); boolean remove = false; while (parent != null) { ASTMessageGrouping grouping = groups.get(parent); if (grouping.node.isLoop() && grouping.getLength() <= 0) { remove = true; break; } parent = parent.getParent(); } if (remove) { i.remove(); } } } } for (ASTMessageGrouping group : unusedGroups) { updateGrouping(group, group.node.getNode()); } return unusedGroups.toArray(new ASTMessageGrouping[unusedGroups.size()]); //return result; }
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.commands.ToggleCompactLoopsHandler.java
License:Open Source License
@Override public Object execute(ExecutionEvent event) throws ExecutionException { //just set the preference IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); boolean compactGroups = store.getBoolean(ISketchPluginPreferences.COMPACT_LOOPS_PREFERENCE); store.setValue(ISketchPluginPreferences.COMPACT_LOOPS_PREFERENCE, !compactGroups); return null;//from w ww . j a v a2 s . co m }
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.commands.ToggleCompactLoopsHandler.java
License:Open Source License
@SuppressWarnings("unchecked") @Override// w w w .ja va 2s . c o m public void updateElement(UIElement element, Map parameters) { IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); element.setChecked(store.getBoolean(ISketchPluginPreferences.COMPACT_LOOPS_PREFERENCE)); }
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.commands.ToggleDisplayGroupHandler.java
License:Open Source License
@Override public Object execute(ExecutionEvent event) throws ExecutionException { //just set the preference IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); boolean displayGroups = store.getBoolean(ISketchPluginPreferences.DISPLAY_GROUPS_PREFERENCE); store.setValue(ISketchPluginPreferences.DISPLAY_GROUPS_PREFERENCE, !displayGroups); return null;//from w w w.j a v a 2s . c o m }
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.commands.ToggleDisplayGroupHandler.java
License:Open Source License
@SuppressWarnings("unchecked") @Override/*w w w .j a v a 2 s .c o m*/ public void updateElement(UIElement element, Map parameters) { IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); element.setChecked(store.getBoolean(ISketchPluginPreferences.DISPLAY_GROUPS_PREFERENCE)); }
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.JavaThreadSequenceView.java
License:Open Source License
/** * //from ww w . ja v a 2 s. c o m */ private void createActions() { focusInAction = createContributionItem(FocusInHandler.COMMAND_ID); expandAllAction = createContributionItem(ExpandAllHandler.COMMAND_ID); collapseAllAction = createContributionItem(CollapseAllHandler.COMMAND_ID); focusUpAction = createContributionItem(FocusUpHandler.COMMAND_ID); enableReconnaissanceAction = new RequestReconnaissanceAction(); enableReconnaissanceAction.setText("Filter"); enableReconnaissanceAction.setImageDescriptor(SketchPlugin.getDefault().getImageRegistry() .getDescriptor(ISketchImageConstants.ICON_ELEMENT_VISIBLE)); IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); enableReconnaissanceAction.setChecked(store.getBoolean(ISketchPluginPreferences.DIAGRAM_RECONNAISSANCE)); this.toggleReconFilterAction = new ToggleReconFilterAction(); toggleReconFilterAction.setChecked(store.getBoolean(ISketchPluginPreferences.DIAGRAM_RECON_HIDE)); toggleReconFilterAction.setText("Hide Unnecessary Calls"); // focusUpAction = new FocusUpHandler(viewer); // focusUpAction.setText("Focus On Parent"); // focusUpAction.setImageDescriptor( // SketchPlugin.imageDescriptorFromPlugin("images/etool16/up.gif") // ); // expandAllAction = new ExpandAllHandler(viewer); // expandAllAction.setText("Expand All Children"); // expandAllAction.setImageDescriptor( // SketchPlugin.imageDescriptorFromPlugin("images/etool16/expandAll.gif") // ); // collapseAllAction = new CollapseAllHandler(viewer); // collapseAllAction.setText("Collapse All Children"); // collapseAllAction.setImageDescriptor( // SketchPlugin.imageDescriptorFromPlugin("images/etool16/collapseAll.gif") // ); }
From source file:ca.uvic.chisel.javasketch.ui.internal.presentation.TraceThreadLabelProvider.java
License:Open Source License
@Override public Color getForeground(Object element) { IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); boolean recon = store.getBoolean(ISketchPluginPreferences.DIAGRAM_RECONNAISSANCE); if (recon) {/*from w w w. ja v a 2 s. c om*/ if (SketchPlugin.getDefault().getDOI().getInterest(element) < .3) { return PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_GRAY); } } if (element instanceof IActivation) { try { IJavaElement je = JavaSearchUtils.findElement((IActivation) element, new NullProgressMonitor()); if (je instanceof IMethod) { IMethod method = (IMethod) je; int flags = method.getFlags(); if ((flags & Flags.AccPrivate) != 0) { return ISketchColorConstants.PRIVATE_FG; } else if ((flags & Flags.AccProtected) != 0) { return ISketchColorConstants.PROTECTED_FG; } else if ((flags & Flags.AccDefault) != 0) { return ISketchColorConstants.FRIEND_FG; } else { return ISketchColorConstants.PUBLIC_FG; } } } catch (JavaModelException e) { } catch (InterruptedException e) { } catch (CoreException e) { } catch (Exception e) { } } else if (element instanceof IThrow) { return PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_RED); } else if (element instanceof IMessage) { return PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_BLACK); } return null; }
From source file:ca.uvic.chisel.javasketch.ui.internal.views.java.PackageExplorerFilterAction.java
License:Open Source License
@Override public void run(IAction action) { IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); boolean enabled = store.getBoolean(SketchUI.PREFERENCE_FILTER_PACKAGE_EXPLORER); store.setValue(SketchUI.PREFERENCE_FILTER_PACKAGE_EXPLORER, !enabled); }
From source file:ca.uvic.chisel.javasketch.ui.internal.views.TraceNavigator.java
License:Open Source License
@Override public void createPartControl(Composite parent) { viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION); viewer.setUseHashlookup(true);/*from w w w .j a va 2 s . c o m*/ // TreeViewerColumn plusColumn = new TreeViewerColumn(viewer, SWT.NONE, // 0); // plusColumn.getColumn().setWidth(60); final TreeViewerColumn labelColumn = new TreeViewerColumn(viewer, SWT.NONE, LABEL_COLUMN); labelColumn.getColumn().setWidth(100); TreeViewerColumn activeTraceColumn = new TreeViewerColumn(viewer, SWT.NONE, ACTIVE_TRACE_COLUMN); activeTraceColumn.getColumn().setWidth(16); TreeViewerColumn visibleTraceColumn = new TreeViewerColumn(viewer, SWT.NONE, VISIBLE_TRACE_COLUMN); visibleTraceColumn.getColumn().setWidth(16); viewer.getTree().addMouseListener(treeMouseListener); viewer.getTree().addControlListener(new ControlAdapter() { /* * (non-Javadoc) * @see * org.eclipse.swt.events.ControlAdapter#controlResized(org.eclipse * .swt.events.ControlEvent) */ @Override public void controlResized(ControlEvent e) { Composite composite = (Composite) e.widget; Rectangle b = composite.getBounds(); ScrollBar scrollbar = composite.getVerticalBar(); int width = b.width - 32; if (scrollbar != null && scrollbar.getVisible()) { width -= 20; } labelColumn.getColumn().setWidth(Math.max(0, width)); } }); viewer.setContentProvider(new TraceNavigatorContentProvider()); viewer.setLabelProvider(new TraceNavigatorLabelProvider()); viewer.setInput(ResourcesPlugin.getWorkspace().getRoot()); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { IStructuredSelection selection = (IStructuredSelection) event.getSelection(); Object o = selection.getFirstElement(); if (o instanceof IThread) { SketchPlugin.getDefault().getDOI().setThreadSelection((IThread) o); } else { SketchPlugin.getDefault().getDOI().setThreadSelection(null); } SketchUI.INSTANCE.refreshJavaUI(); } }); createContextMenu(viewer.getControl()); getSite().setSelectionProvider(viewer); IMenuManager manager = getViewSite().getActionBars().getMenuManager(); Action toggleFilterAction = new Action("Filter Empty Threads", SWT.CHECK) { /* (non-Javadoc) * @see org.eclipse.jface.action.Action#run() */ @Override public void run() { IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); boolean checked = store.getBoolean("tracenavigator.filter.emptythread"); if (checked) { //uncheck viewer.removeFilter(threadFilter); } else { viewer.addFilter(threadFilter); } store.setValue("tracenavigator.filter.emptythread", !checked); viewer.refresh(); } }; IPreferenceStore store = SketchPlugin.getDefault().getPreferenceStore(); boolean checked = true; if (!store.contains("tracenavigator.filter.emptythread")) { store.setValue("tracenavigator.filter.emptythread", true); } else { checked = store.getBoolean("tracenavigator.filter.emptythread"); } toggleFilterAction.setChecked(checked); if (checked) { viewer.addFilter(threadFilter); } manager.add(toggleFilterAction); }
From source file:ca.uvic.cs.tagsea.monitoring.internal.Monitoring.java
License:Open Source License
/** * //w ww .ja va 2 s.c o m */ private void updatePreferences() { IPreferenceStore prefs = TagSEAPlugin.getDefault().getPreferenceStore(); synchronized (monitors) { for (ITagSEAMonitor monitor : allMonitors) { if (prefs.getBoolean(getPreferenceKey(monitor))) { activate(monitor); } } for (ITagSEAMonitor monitor : allMonitors) { if (prefs.getBoolean(getPreferenceKey(monitor))) { monitors.add(monitor); } } } }