Example usage for org.eclipse.jface.preference IPreferenceStore getBoolean

List of usage examples for org.eclipse.jface.preference IPreferenceStore getBoolean

Introduction

In this page you can find the example usage for org.eclipse.jface.preference IPreferenceStore getBoolean.

Prototype

boolean getBoolean(String name);

Source Link

Document

Returns the current value of the boolean-valued preference with the given name.

Usage

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);
            }
        }
    }
}