X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=lttng%2Forg.eclipse.tracecompass.lttng2.control.ui%2Fsrc%2Forg%2Feclipse%2Ftracecompass%2Finternal%2Flttng2%2Fcontrol%2Fui%2Fviews%2Fdialogs%2FEnableKernelEventComposite.java;h=ae63d4f6a9133b78910bef6effb7abe8e2af25cd;hb=9ee91a867744ffc34478dfe9bf8840e8a40e3a2c;hp=d7f6db270c1bcf977346b518b2b6cf93459747b8;hpb=a1fded88c081389be8aabbe8e92859a67dbb2ef5;p=deliverable%2Ftracecompass.git diff --git a/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableKernelEventComposite.java b/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableKernelEventComposite.java index d7f6db270c..ae63d4f6a9 100644 --- a/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableKernelEventComposite.java +++ b/lttng/org.eclipse.tracecompass.lttng2.control.ui/src/org/eclipse/tracecompass/internal/lttng2/control/ui/views/dialogs/EnableKernelEventComposite.java @@ -53,12 +53,16 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern // ------------------------------------------------------------------------ // Constants // ------------------------------------------------------------------------ - private enum KernelGroupEnum { TRACEPOINTS, SYSCALLS, PROBE, FUNCTION } + private enum KernelGroupEnum { ALL, TRACEPOINTS, SYSCALLS, PROBE, FUNCTION } // ------------------------------------------------------------------------ // Attributes // ------------------------------------------------------------------------ + /** + * A button to enable/disable the all tracepoints&sycalls group + */ + private Button fAllActivateButton; /** * A button to enable/disable the tracepoints group */ @@ -104,6 +108,10 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern * component which contains a list of available tracepoints. */ private final TraceProviderGroup fProviderGroup; + /** + * The flag indicating that all tracepoints/syscalls are selected. + */ + private boolean fIsAllTracepointsAndSyscalls; /** * The flag indicating that tracepoints are selected. */ @@ -171,7 +179,10 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern // ------------------------------------------------------------------------ // Acessors // ------------------------------------------------------------------------ - + @Override + public boolean isAllEvents() { + return fIsAllTracepointsAndSyscalls; + } @Override public boolean isTracepoints() { return fIsTracepoints; @@ -241,6 +252,9 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern */ public void createContent() { + // All Tracepoints/syscalls Group + createAllTracepointsSyscallGroup(); + // Tracepoints Group createTracepointsGroup(); @@ -257,7 +271,7 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern createFilterGroup(); // Set default enablements - setKernelEnablements(KernelGroupEnum.TRACEPOINTS); + setKernelEnablements(KernelGroupEnum.ALL); } /** @@ -265,6 +279,7 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern * @return true if configured data is valid and can be retrieved. */ public boolean isValid() { + fIsAllTracepointsAndSyscalls = fAllActivateButton.getSelection(); fIsTracepoints = fTracepointsActivateButton.getSelection(); fIsSysCalls = fSysCallsActivateButton.getSelection(); fIsDynamicProbe = fProbeActivateButton.getSelection(); @@ -339,6 +354,39 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern return true; } + /** + * Creates all tracepoints/syscalls group. + */ + private void createAllTracepointsSyscallGroup() { + + GridLayout layout; + GridData data; + Group tpMainGroup = new Group(this, SWT.SHADOW_NONE); + tpMainGroup.setText(Messages.TraceControl_EnableEventsAllEventsLabel); + layout = new GridLayout(2, false); + tpMainGroup.setLayout(layout); + data = new GridData(GridData.FILL_HORIZONTAL); + tpMainGroup.setLayoutData(data); + + Composite buttonComposite = new Composite(tpMainGroup, SWT.NONE); + layout = new GridLayout(1, true); + buttonComposite.setLayout(layout); + data = new GridData(SWT.BEGINNING, SWT.CENTER, false, true); + buttonComposite.setLayoutData(data); + + fAllActivateButton = new Button(buttonComposite, SWT.RADIO); + fAllActivateButton.setText(Messages.TraceControl_EnableGroupSelectionName); + fAllActivateButton.setToolTipText(Messages.TraceControl_EnableEventsAllEventsTooltip); + data = new GridData(GridData.FILL_HORIZONTAL); + fAllActivateButton.setLayoutData(data); + fAllActivateButton.addSelectionListener(new SelectionAdapter() { + @Override + public void widgetSelected(SelectionEvent e) { + setKernelEnablements(KernelGroupEnum.ALL); + } + }); + } + /** * Creates tracepoints group. */ @@ -561,6 +609,7 @@ public class EnableKernelEventComposite extends Composite implements IEnableKern * @param group - group to enable. */ private void setKernelEnablements(KernelGroupEnum group) { + fAllActivateButton.setSelection(group == KernelGroupEnum.ALL); fTracepointsActivateButton.setSelection(group == KernelGroupEnum.TRACEPOINTS); fTracepointsViewer.getTree().setEnabled(group == KernelGroupEnum.TRACEPOINTS);