lttng: Add a diagram showing the dependencies between plugins
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng2.ui / src / org / eclipse / linuxtools / internal / lttng2 / ui / views / control / dialogs / EnableUstEventsComposite.java
index 34571df59f6e95232fc865ce1f5aad017ac8c3b0..c3090d91246b9bb19b146e6c3e23aafb8c97b360 100644 (file)
@@ -1,13 +1,15 @@
 /**********************************************************************
- * Copyright (c) 2012 Ericsson
- * 
+ * Copyright (c) 2012, 2014 Ericsson
+ *
  * All rights reserved. This program and the accompanying materials are
  * made available under the terms of the Eclipse Public License v1.0 which
  * accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
+ *
+ * Contributors:
  *   Bernd Hufmann - Initial API and implementation
+ *   Bernd Hufmann - Updated for support of LTTng Tools 2.1
+ *   Marc-Andre Laperle - Add filtering textbox
  **********************************************************************/
 package org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs;
 
@@ -20,14 +22,15 @@ import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.jface.viewers.CheckStateChangedEvent;
 import org.eclipse.jface.viewers.CheckboxTreeViewer;
 import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.linuxtools.internal.lttng2.ui.views.control.Messages;
-import org.eclipse.linuxtools.internal.lttng2.ui.views.control.TraceControlContentProvider;
-import org.eclipse.linuxtools.internal.lttng2.ui.views.control.TraceControlLabelProvider;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.linuxtools.internal.lttng2.core.control.model.LogLevelType;
+import org.eclipse.linuxtools.internal.lttng2.core.control.model.TraceLogLevel;
+import org.eclipse.linuxtools.internal.lttng2.ui.views.control.messages.Messages;
 import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.ITraceControlComponent;
-import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.LogLevelType;
-import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.TraceLogLevel;
 import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.BaseEventComponent;
 import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TargetNodeComponent;
+import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceControlContentProvider;
+import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceControlLabelProvider;
 import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.TraceProviderGroup;
 import org.eclipse.linuxtools.internal.lttng2.ui.views.control.model.impl.UstProviderComponent;
 import org.eclipse.swt.SWT;
@@ -42,25 +45,28 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Group;
 import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.FilteredTree;
+import org.eclipse.ui.dialogs.PatternFilter;
 
 /**
- * <b><u>EnableUstEventsComposite</u></b>
  * <p>
  * A composite for collecting information about UST events to be enabled.
  * </p>
+ *
+ * @author Bernd Hufmann
  */
 public class EnableUstEventsComposite extends Composite implements IEnableUstEvents  {
 
     // ------------------------------------------------------------------------
     // Constants
     // ------------------------------------------------------------------------
-    
-    private enum GroupEnum { TRACEPOINTS, WILDCARD, LOGLEVEL };
-    
+
+    private enum GroupEnum { TRACEPOINTS, WILDCARD, LOGLEVEL }
+
     // ------------------------------------------------------------------------
     // Attributes
     // ------------------------------------------------------------------------
-    
+
     /**
      * A button to enable/disable the tracepoints group
      */
@@ -98,10 +104,15 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
      */
     private Button fLogLevelOnlyButton;
     /**
-     * The referenced trace provider group containing the UST providers 
+     * The filter text
+     */
+    private Text fFilterText;
+
+    /**
+     * The referenced trace provider group containing the UST providers
      * component which contains a list of available tracepoints.
      */
-    private TraceProviderGroup fProviderGroup;
+    private final TraceProviderGroup fProviderGroup;
     /**
      * The flag indicating that tracepoints are selected.
      */
@@ -115,15 +126,15 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
      */
     private List<String> fSelectedEvents;
     /**
-     * The flag indicating that all wildcard are selected.. 
+     * The flag indicating that all wildcard are selected..
      */
     private boolean fIsWildcard;
     /**
-     * The wildcard if wildcard is selected. 
+     * The wildcard if wildcard is selected.
      */
     private String fWildcard;
     /**
-     *The flag indicating that all log level are selected. 
+     *The flag indicating that all log level are selected.
      */
     private boolean fIsLogLevel;
     /**
@@ -138,6 +149,10 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
      * The actual selected log level.
      */
     private TraceLogLevel fLogLevel;
+    /**
+     * The filter expression
+     */
+    private String fFilterExpression;
 
     // ------------------------------------------------------------------------
     // Constructors
@@ -145,7 +160,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
     /**
      * Constructor
      * @param parent - a parent composite
-     * @Param style - a compsite style
+     * @param style - a composite style
      * @param providerGroup - the trace provider group
      */
     public EnableUstEventsComposite(Composite parent, int style, TraceProviderGroup providerGroup) {
@@ -157,187 +172,180 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
     // Accessors
     // ------------------------------------------------------------------------
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#isTracepoints()
-     */
     @Override
     public boolean isTracepoints() {
         return fIsTracepoints;
     }
-    
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#isAllTracePoints()
-     */
+
     @Override
     public boolean isAllTracePoints() {
         return fIsAllTracepoints;
     }
-    
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#getEventNames()
-     */
+
     @Override
     public List<String> getEventNames() {
-        return new ArrayList<String>(fSelectedEvents);
+        return new ArrayList<>(fSelectedEvents);
     }
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#isWildcard()
-     */
     @Override
     public boolean isWildcard() {
         return fIsWildcard;
     }
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#getWildcard()
-     */
     @Override
     public String getWildcard() {
-        return "\"" + fWildcard + "\"";  //$NON-NLS-1$//$NON-NLS-2$
+        return fWildcard;
     }
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#isLogLevel()
-     */
     @Override
     public boolean isLogLevel() {
         return fIsLogLevel;
     }
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#getLogLevelType()
-     */
     @Override
     public LogLevelType getLogLevelType() {
         return fLogLevelType;
     }
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#getLogLevel()
-     */
     @Override
     public TraceLogLevel getLogLevel() {
         return fLogLevel;
     }
 
-    /*
-     * (non-Javadoc)
-     * @see org.eclipse.linuxtools.internal.lttng2.ui.views.control.dialogs.IEnableUstEvents#getLogLevelEventName()
-     */
     @Override
     public String getLogLevelEventName() {
         return fLogLevelEventName;
     }
-    
+
+    @Override
+    public String getFilterExpression() {
+        return fFilterExpression;
+    }
+
     // ------------------------------------------------------------------------
     // Operations
     // ------------------------------------------------------------------------
 
+    /**
+     * Create the contents of this event composite
+     */
     public void createContent() {
-        
-        // Tracepoints Group 
+
+        // Tracepoints Group
         createTracepointsGroup();
 
-        // Wildcard Group 
+        // Wildcard Group
         createWildCardGroup();
 
-        // Log Level Group 
+        // Log Level Group
         createLogLevelGroup();
-        
+
+        // Filter Group
+        createFilterGroup();
+
         // Set default enablements
         setEnablements(GroupEnum.TRACEPOINTS);
     }
 
     /**
-    * Validates the UST composite input data.
-    * @return true if configured data is valid and can be retrieved.
-    */
+     * Validates the UST composite input data.
+     *
+     * @return true if configured data is valid and can be retrieved.
+     */
     public boolean isValid() {
-        
+
         fIsTracepoints = fTracepointsActivateButton.getSelection();
         fIsWildcard = fWildcardActivateButton.getSelection();
         fIsLogLevel = fLogLevelActivateButton.getSelection();
-        
-        fIsAllTracepoints = fTracepointsViewer.getChecked(fProviderGroup);
-
-        Set<String> set = new HashSet<String>();
-        Object[] checkedElements = fTracepointsViewer.getCheckedElements();
-        fSelectedEvents = new ArrayList<String>();
-        for (int i = 0; i < checkedElements.length; i++) {
-            ITraceControlComponent component = (ITraceControlComponent)checkedElements[i];
-            if (!set.contains(component.getName()) && (component instanceof BaseEventComponent)) {
-                set.add(component.getName());
-                fSelectedEvents.add(component.getName());
-            }
-        }
 
-        if (fLogLevelButton.getSelection()) {
-            fLogLevelType = LogLevelType.LOGLEVEL;
-        } else if (fLogLevelOnlyButton.getSelection()) {
-            fLogLevelType = LogLevelType.LOGLEVEL_ONLY;
-        } else {
-            fLogLevelType = LogLevelType.LOGLEVEL_NONE;
+        // initialize tracepoint fields
+        fIsAllTracepoints = false;
+        fSelectedEvents = new ArrayList<>();
+        if (fIsTracepoints) {
+            fIsAllTracepoints = fTracepointsViewer.getChecked(fProviderGroup);
+            Set<String> set = new HashSet<>();
+            Object[] checkedElements = fTracepointsViewer.getCheckedElements();
+            for (int i = 0; i < checkedElements.length; i++) {
+                ITraceControlComponent component = (ITraceControlComponent)checkedElements[i];
+                if (!set.contains(component.getName()) && (component instanceof BaseEventComponent)) {
+                    set.add(component.getName());
+                    fSelectedEvents.add(component.getName());
+                }
+            }
         }
 
         // initialize log level event name string
+        fLogLevelType = LogLevelType.LOGLEVEL_NONE;
         fLogLevelEventName = null;
-        String temp = fLogLevelEventNameText.getText();
-        if (!temp.matches("^[\\s]{0,}$") && !temp.matches("^[a-zA-Z0-9\\-\\_]{1,}$")) { //$NON-NLS-1$ //$NON-NLS-2$
-            MessageDialog.openError(getShell(),
-                    Messages.TraceControl_EnableEventsDialogTitle,
-                    Messages.TraceControl_InvalidLogLevelEventNameError + " (" + temp + ") \n");  //$NON-NLS-1$ //$NON-NLS-2$
 
-            return false;
-        }
+        if (fIsLogLevel) {
+            if (fLogLevelButton.getSelection()) {
+                fLogLevelType = LogLevelType.LOGLEVEL;
+            } else if (fLogLevelOnlyButton.getSelection()) {
+                fLogLevelType = LogLevelType.LOGLEVEL_ONLY;
+            }
 
-        if(!temp.matches("\\s*")) { //$NON-NLS-1$
-          fLogLevelEventName = temp;
-        }
+            String temp = fLogLevelEventNameText.getText();
+            if (temp.isEmpty() ||
+                temp.matches("\\s*") || //$NON-NLS-1$
+                (!temp.matches("^[\\s]{0,}$") && !temp.matches("^[a-zA-Z0-9\\-\\_]{1,}$"))) { //$NON-NLS-1$ //$NON-NLS-2$
+                MessageDialog.openError(getShell(),
+                        Messages.TraceControl_EnableEventsDialogTitle,
+                        Messages.TraceControl_InvalidLogLevelEventNameError + " (" + temp + ") \n");  //$NON-NLS-1$ //$NON-NLS-2$
 
-        TraceLogLevel[] levels = TraceLogLevel.values();
-        int id = fLogLevelCombo.getSelectionIndex();
-        if ((id < 0) && fIsLogLevel) {
-            MessageDialog.openError(getShell(),
-                    Messages.TraceControl_EnableEventsDialogTitle,
-                    Messages.TraceControl_InvalidLogLevel + " (" + temp + ") \n");  //$NON-NLS-1$ //$NON-NLS-2$
-
-            return false;
-        } else {
+                return false;
+            }
+
+            fLogLevelEventName = temp;
+
+            TraceLogLevel[] levels = TraceLogLevel.values();
+            int id = fLogLevelCombo.getSelectionIndex();
+
+            if (id < 0) {
+                MessageDialog.openError(getShell(),
+                        Messages.TraceControl_EnableEventsDialogTitle,
+                        Messages.TraceControl_InvalidLogLevel + " (" + temp + ") \n");  //$NON-NLS-1$ //$NON-NLS-2$
+
+                return false;
+            }
             fLogLevel = levels[id];
         }
 
-        // initialize log level event name string
+        // initialize wildcard with null
         fWildcard = null;
-        temp = fWildcardText.getText();
-        if (!temp.matches("^[\\s]{0,}$") && !temp.matches("^[a-zA-Z0-9\\-\\_\\*]{1,}$")) { //$NON-NLS-1$ //$NON-NLS-2$
-            MessageDialog.openError(getShell(),
-                    Messages.TraceControl_EnableEventsDialogTitle,
-                    Messages.TraceControl_InvalidWildcardError + " (" + temp + ") \n");  //$NON-NLS-1$ //$NON-NLS-2$
+        if (fIsWildcard) {
+            String tempWildcard = fWildcardText.getText();
+            if (tempWildcard.isEmpty() ||
+                tempWildcard.matches("\\s*") || //$NON-NLS-1$
+                (!tempWildcard.matches("^[\\s]{0,}$") && !tempWildcard.matches("^[a-zA-Z0-9\\-\\_\\*]{1,}$"))) { //$NON-NLS-1$ //$NON-NLS-2$
+                MessageDialog.openError(getShell(),
+                        Messages.TraceControl_EnableEventsDialogTitle,
+                        Messages.TraceControl_InvalidWildcardError + " (" + tempWildcard + ") \n");  //$NON-NLS-1$ //$NON-NLS-2$
+
+                return false;
+            }
 
-            return false;
+            fWildcard = tempWildcard;
         }
-        
-        if(!temp.matches("\\s*")) { //$NON-NLS-1$
-            fWildcard = temp;
+
+        // initialize filter with null
+        fFilterExpression = null;
+        if (fProviderGroup.isEventFilteringSupported()) {
+            String tempFilter = fFilterText.getText();
+
+            if(!tempFilter.isEmpty() && !tempFilter.matches("\\s*")) { //$NON-NLS-1$
+                fFilterExpression = tempFilter;
+            }
         }
-        
+
         // validation successful -> call super.okPressed()
         return true;
     }
-    
+
     // ------------------------------------------------------------------------
     // Helper methods
     // ------------------------------------------------------------------------
-    
+
     /**
      * Creates tracepoints group.
      */
@@ -348,7 +356,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         tpMainGroup.setLayout(layout);
         GridData data = new GridData(GridData.FILL_BOTH);
         tpMainGroup.setLayoutData(data);
-        
+
         Composite buttonComposite = new Composite(tpMainGroup, SWT.NONE);
         layout = new GridLayout(1, true);
         buttonComposite.setLayout(layout);
@@ -365,24 +373,29 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
                 setEnablements(GroupEnum.TRACEPOINTS);
             }
         });
-        
+
         Group tpGroup = new Group(tpMainGroup, SWT.SHADOW_NONE);
         layout = new GridLayout(1, true);
         tpGroup.setLayout(layout);
         data = new GridData(GridData.FILL_BOTH);
         tpGroup.setLayoutData(data);
-        
-        fTracepointsViewer = new CheckboxTreeViewer(tpGroup, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
-        fTracepointsViewer.getTree().setToolTipText(Messages.TraceControl_EnableEventsTracepointTreeTooltip);
-        fTracepointsViewer.setContentProvider(new UstContentProvider());
+        new FilteredTree(tpGroup, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER, new PatternFilter(), true) {
+            @Override
+            protected TreeViewer doCreateTreeViewer(Composite aparent, int style) {
+                fTracepointsViewer = new CheckboxTreeViewer(aparent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
+                fTracepointsViewer.getTree().setToolTipText(Messages.TraceControl_EnableEventsTracepointTreeTooltip);
+                fTracepointsViewer.setContentProvider(new UstContentProvider());
 
-        fTracepointsViewer.setLabelProvider(new UstLabelProvider());
-        fTracepointsViewer.addCheckStateListener(new UstCheckStateListener());
+                fTracepointsViewer.setLabelProvider(new UstLabelProvider());
+                fTracepointsViewer.addCheckStateListener(new UstCheckStateListener());
 
-        fTracepointsViewer.setInput(fProviderGroup.getParent());
-        fTracepointsViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
+                fTracepointsViewer.setInput(fProviderGroup.getParent());
+                fTracepointsViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
+                return fTracepointsViewer;
+            }
+        };
     }
-    
+
     /**
      * Creates wildcard group.
      */
@@ -393,7 +406,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         wildcardMainGroup.setLayout(layout);
         GridData data = new GridData(GridData.FILL_HORIZONTAL);
         wildcardMainGroup.setLayoutData(data);
-        
+
         Composite buttonComposite = new Composite(wildcardMainGroup, SWT.NONE);
         layout = new GridLayout(1, false);
         buttonComposite.setLayout(layout);
@@ -411,26 +424,26 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
                 setEnablements(GroupEnum.WILDCARD);
             }
         });
-        
+
         Group wildcardGroup = new Group(wildcardMainGroup, SWT.SHADOW_NONE);
         layout = new GridLayout(3, true);
         wildcardGroup.setLayout(layout);
         data = new GridData(GridData.FILL_HORIZONTAL);
         wildcardGroup.setLayoutData(data);
-        
+
         Label wildcardLabel = new Label(wildcardGroup, SWT.LEFT);
         wildcardLabel.setText(Messages.TraceControl_EnableEventsWildcardLabel);
         data = new GridData(GridData.FILL_HORIZONTAL);
         data.horizontalSpan = 1;
         wildcardLabel.setLayoutData(data);
-        
+
         fWildcardText = new Text(wildcardGroup, SWT.LEFT);
         fWildcardText.setToolTipText(Messages.TraceControl_EnableEventsWildcardTooltip);
         data = new GridData(GridData.FILL_HORIZONTAL);
         data.horizontalSpan = 2;
         fWildcardText.setLayoutData(data);
     }
-    
+
     /**
      * Creates log level group.
      */
@@ -441,7 +454,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         logLevelMainGroup.setLayout(layout);
         GridData data = new GridData(GridData.FILL_HORIZONTAL);
         logLevelMainGroup.setLayoutData(data);
-        
+
         Composite buttonComposite = new Composite(logLevelMainGroup, SWT.NONE);
         layout = new GridLayout(1, false);
         buttonComposite.setLayout(layout);
@@ -479,7 +492,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         fLogLevelEventNameText.setLayoutData(data);
 
         TraceLogLevel[] levels = TraceLogLevel.values();
-        
+
         String[] levelNames = new String[levels.length - 1];
         int k = 0;
         for (int i = 0; i < levels.length; i++) {
@@ -500,6 +513,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         fLogLevelButton.setToolTipText(Messages.TraceControl_EnableEventsLogLevelTypeTooltip);
         data = new GridData(GridData.FILL_BOTH);
         fLogLevelButton.setLayoutData(data);
+        fLogLevelButton.setSelection(true);
 
         fLogLevelOnlyButton = new Button(logLevelGroup, SWT.RADIO);
         fLogLevelOnlyButton.setText(Messages.TraceControl_EnableEventsLogLevelOnlyTypeName);
@@ -507,17 +521,33 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
         data = new GridData(GridData.FILL_BOTH);
         fLogLevelButton.setLayoutData(data);
     }
-    
+
+    void createFilterGroup() {
+        if (fProviderGroup.isEventFilteringSupported()) {
+            Group filterMainGroup = new Group(this, SWT.SHADOW_NONE);
+            filterMainGroup.setText(Messages.TraceControl_EnableEventsFilterGroupName);
+            GridLayout layout = new GridLayout(3, false);
+            filterMainGroup.setLayout(layout);
+            GridData data = new GridData(GridData.FILL_HORIZONTAL);
+            filterMainGroup.setLayoutData(data);
+
+            fFilterText = new Text(filterMainGroup, SWT.LEFT);
+            fFilterText.setToolTipText(Messages.TraceControl_EnableEventsFilterTooltip);
+            data = new GridData(GridData.FILL_HORIZONTAL);
+            fFilterText.setLayoutData(data);
+        }
+    }
+
     /**
      * Enable/selects widgets depending on the group specified.
      * @param group - group to enable.
      */
     private void setEnablements(GroupEnum group) {
-        
+
         // Enable/disable trace point items
         fTracepointsActivateButton.setSelection(group == GroupEnum.TRACEPOINTS);
         fTracepointsViewer.getTree().setEnabled(group == GroupEnum.TRACEPOINTS);
-        
+
         // Enable/disable wildcard items
         fWildcardActivateButton.setSelection(group == GroupEnum.WILDCARD);
         fWildcardText.setEnabled(group == GroupEnum.WILDCARD);
@@ -534,18 +564,18 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
     // Local classes
     // ------------------------------------------------------------------------
     /**
-     * Content provider for the tracepoints tree. 
+     * Content provider for the tracepoints tree.
      */
-    final static public class UstContentProvider extends TraceControlContentProvider {
+    public static final class UstContentProvider extends TraceControlContentProvider {
         @Override
         public Object[] getChildren(Object parentElement) {
             if (parentElement instanceof TargetNodeComponent) {
                 List<ITraceControlComponent> children = ((ITraceControlComponent)parentElement).getChildren(TraceProviderGroup.class);
-                return (ITraceControlComponent[]) children.toArray(new ITraceControlComponent[children.size()]);
+                return children.toArray(new ITraceControlComponent[children.size()]);
             }
             if (parentElement instanceof TraceProviderGroup) {
                 List<ITraceControlComponent> children = ((ITraceControlComponent)parentElement).getChildren(UstProviderComponent.class);
-                return (ITraceControlComponent[]) children.toArray(new ITraceControlComponent[children.size()]);
+                return children.toArray(new ITraceControlComponent[children.size()]);
             }
             if (parentElement instanceof ITraceControlComponent) {
                 return ((ITraceControlComponent)parentElement).getChildren();
@@ -553,11 +583,11 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
             return new Object[0];
         }
     }
-    
+
     /**
-     * Content label for the tracepoints tree. 
+     * Content label for the tracepoints tree.
      */
-     final static public class UstLabelProvider extends TraceControlLabelProvider {
+    public static final class UstLabelProvider extends TraceControlLabelProvider {
         @Override
         public Image getImage(Object element) {
             return null;
@@ -576,9 +606,9 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
     }
 
     /**
-     * Check state listener for the tracepoints tree. 
+     * Check state listener for the tracepoints tree.
      */
-    final public class UstCheckStateListener implements ICheckStateListener {
+    public final class UstCheckStateListener implements ICheckStateListener {
         @Override
         public void checkStateChanged(CheckStateChangedEvent event) {
             if (event.getChecked()) {
@@ -587,7 +617,7 @@ public class EnableUstEventsComposite extends Composite implements IEnableUstEve
                 }
                 if (event.getElement() instanceof UstProviderComponent) {
                     fTracepointsViewer.setSubtreeChecked(event.getElement(), true);
-                } 
+                }
             } else {
                 if (event.getElement() instanceof TraceProviderGroup) {
                     fTracepointsViewer.setSubtreeChecked(event.getElement(), true);
This page took 0.031082 seconds and 5 git commands to generate.