From f75337bee0f39c843981cd9caa29b09d26da3fcb Mon Sep 17 00:00:00 2001 From: Bernd Hufmann Date: Tue, 5 Nov 2013 14:57:10 -0500 Subject: [PATCH] lttng: Add possibility to select/deselect all in remote import dialog Change-Id: I41c32e3d214b422795679ba1d2e425eb8af58e5b Signed-off-by: Bernd Hufmann Reviewed-on: https://git.eclipse.org/r/18099 Reviewed-by: Marc-Andre Laperle IP-Clean: Marc-Andre Laperle Tested-by: Marc-Andre Laperle Tested-by: Hudson CI --- .../doc/User-Guide.mediawiki | 2 +- .../doc/images/LTTng2ImportDialog.png | Bin 27932 -> 38707 bytes .../views/control/dialogs/ImportDialog.java | 64 ++++++++++++++---- .../ui/views/control/messages/Messages.java | 2 + .../control/messages/messages.properties | 3 + 5 files changed, 55 insertions(+), 16 deletions(-) diff --git a/org.eclipse.linuxtools.lttng.help/doc/User-Guide.mediawiki b/org.eclipse.linuxtools.lttng.help/doc/User-Guide.mediawiki index 02bf777eff..68d4ba90b5 100644 --- a/org.eclipse.linuxtools.lttng.help/doc/User-Guide.mediawiki +++ b/org.eclipse.linuxtools.lttng.help/doc/User-Guide.mediawiki @@ -1264,7 +1264,7 @@ A new display will open for selecting the traces to import. [[Image:images/LTTng2ImportDialog.png]] -By default all traces are selected. Also, a default project with the name '''Remote''' is selected which will be created if necessary. Update the list of traces to be imported, if necessary, by selecting and deselecting the relevant traces in the tree viewer. Also if needed, change the tracing project from the '''Available Projects''' combo box. Select the Overwrite button ('''Overwrite existing trace without warning''') if required. Then press button '''Ok'''. Upon successful import operation the selected traces will be stored in the '''Traces''' directory of the specified tracing project. For '''Kernel''' traces the trace type '''LTTng Kernel''' and for '''UST''' traces the trace type '''Generic CTF Trace''' will be set. From the '''Project Explorer''' view, the trace can be analyzed further. +By default all traces are selected. A default project with the name '''Remote''' is selected which will be created if necessary. Update the list of traces to be imported, if necessary, by selecting and deselecting the relevant traces in the tree viewer. Use buttons '''Select All''' or '''Deselect All''' to select or deselect all traces. Also if needed, change the tracing project from the '''Available Projects''' combo box. Select the Overwrite button ('''Overwrite existing trace without warning''') if required. Then press button '''Ok'''. Upon successful import operation the selected traces will be stored in the '''Traces''' directory of the specified tracing project. For '''Kernel''' traces the trace type '''LTTng Kernel''' and for '''UST''' traces the trace type '''Generic CTF Trace''' will be set. From the '''Project Explorer''' view, the trace can be analyzed further. '''Note''': The trace will be imported with a name constructed with information about session, whether it is a kernel or ust trace, ust buffer type (per UID or per PID) and snapshot details. diff --git a/org.eclipse.linuxtools.lttng.help/doc/images/LTTng2ImportDialog.png b/org.eclipse.linuxtools.lttng.help/doc/images/LTTng2ImportDialog.png index 9a44b8910e91f939135eb6fd32ead953e933da6a..09b3520ea67fd4fee3227e26297337f1fe459014 100644 GIT binary patch literal 38707 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

) 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 diff --git a/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/dialogs/ImportDialog.java b/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/dialogs/ImportDialog.java index d49f8b2aee..b82653d800 100644 --- a/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/dialogs/ImportDialog.java +++ b/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/dialogs/ImportDialog.java @@ -38,6 +38,8 @@ import org.eclipse.rse.subsystems.files.core.servicesubsystem.IFileServiceSubSys import org.eclipse.rse.subsystems.files.core.subsystems.IRemoteFile; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.CCombo; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; @@ -119,6 +121,10 @@ public class ImportDialog extends Dialog implements IImportDialog { * Flag to indicate that something went wrong when creating the dialog box. */ private boolean fIsError = false; + /** + * Children of the remote folder (can be null) + */ + private Object[] fFolderChildren = null; // ------------------------------------------------------------------------ // Constructors @@ -189,8 +195,24 @@ public class ImportDialog extends Dialog implements IImportDialog { @Override protected void createButtonsForButtonBar(Composite parent) { - createButton(parent, IDialogConstants.CANCEL_ID, "&Cancel", true); //$NON-NLS-1$ - createButton(parent, IDialogConstants.OK_ID, "&Ok", true); //$NON-NLS-1$ + Button selectAllButton = createButton(parent, IDialogConstants.SELECT_ALL_ID, Messages.TraceControl_ImportDialog_SelectAll, true); + selectAllButton.addSelectionListener(new SelectionAdapter() { + @Override + public void widgetSelected(SelectionEvent e) { + setFolderChildrenChecked(true); + } + }); + + Button deselectAllButton = createButton(parent, IDialogConstants.DESELECT_ALL_ID, Messages.TraceControl_ImportDialog_DeselectAll, true); + deselectAllButton.addSelectionListener(new SelectionAdapter() { + @Override + public void widgetSelected(SelectionEvent e) { + setFolderChildrenChecked(false); + } + }); + createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, true); + createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true); + updateOKButtonEnablement(); } @Override @@ -345,7 +367,7 @@ public class ImportDialog extends Dialog implements IImportDialog { // make sure that remote directory is read and not cached remoteFolder.markStale(true, true); - fFolderViewer = new CheckboxTreeViewer(contextGroup, SWT.BORDER); + fFolderViewer = new CheckboxTreeViewer(contextGroup, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL); GridData data = new GridData(GridData.FILL_BOTH); Tree tree = fFolderViewer.getTree(); tree.setLayoutData(data); @@ -365,26 +387,22 @@ public class ImportDialog extends Dialog implements IImportDialog { // A trick to keep selection of a file in sync with the directory boolean p = fFolderViewer.getChecked((element.getParentRemoteFile())); fFolderViewer.setChecked(element, p); - return; - } - fFolderViewer.setSubtreeChecked(event.getElement(), event.getChecked()); - if (!event.getChecked()) { - fFolderViewer.setChecked(element.getParentRemoteFile(), false); + } else { + fFolderViewer.setSubtreeChecked(event.getElement(), event.getChecked()); + if (!event.getChecked()) { + fFolderViewer.setChecked(element.getParentRemoteFile(), false); + } } + updateOKButtonEnablement(); } } }); fFolderViewer.setInput(remoteFolder); - Object[] children = remoteFolder.getContents(RemoteChildrenContentsType.getInstance()); + fFolderChildren = remoteFolder.getContents(RemoteChildrenContentsType.getInstance()); // children can be null if there the path doesn't exist. This happens when a trace // session hadn't been started and no output was created. - if (children != null) { - // Select all traces by default - for (int i = 0; i < children.length; i++) { - fFolderViewer.setSubtreeChecked(children[i], true); - } - } + setFolderChildrenChecked(true); Group projectGroup = new Group(fDialogComposite, SWT.SHADOW_NONE); projectGroup.setText(Messages.TraceControl_ImportDialogProjectsGroupName); @@ -420,4 +438,20 @@ public class ImportDialog extends Dialog implements IImportDialog { getShell().setMinimumSize(new Point(500, 400)); } + private void setFolderChildrenChecked(boolean isChecked) { + if (fFolderChildren != null) { + for (Object child : fFolderChildren) { + fFolderViewer.setSubtreeChecked(child, isChecked); + } + } + updateOKButtonEnablement(); + } + + private void updateOKButtonEnablement() { + Object[] checked = fFolderViewer.getCheckedElements(); + Button okButton = getButton(IDialogConstants.OK_ID); + if (okButton != null) { + okButton.setEnabled(checked.length > 0); + } + } } diff --git a/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/Messages.java b/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/Messages.java index 1b81e6d99a..3d291edafd 100644 --- a/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/Messages.java +++ b/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/Messages.java @@ -216,6 +216,8 @@ final public class Messages extends NLS { public static String TraceControl_ImportDialogNoProjectSelectedError; public static String TraceControl_ImportDialogInvalidTracingProject; public static String TraceControl_ImportDialogNoTraceSelectedError; + public static String TraceControl_ImportDialog_SelectAll; + public static String TraceControl_ImportDialog_DeselectAll; public static String TraceControl_ImportDialogConfirmationTitle; public static String TraceControl_ImportDialogConfirmationOverwriteLabel; diff --git a/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/messages.properties b/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/messages.properties index 8641cf582c..515c57c1e8 100644 --- a/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/messages.properties +++ b/org.eclipse.linuxtools.lttng2.ui/src/org/eclipse/linuxtools/internal/lttng2/ui/views/control/messages/messages.properties @@ -211,6 +211,9 @@ TraceControl_ImportDialogConfirmationRenameLabel=Rename TraceControl_ImportDialogConfirmationNewNameLabel=New Trace Name TraceControl_InvalidTraceNameError=Invalid trace name TraceControl_ImportDialogTraceAlreadyExistError=Trace already exists in project +TraceControl_ImportDialog_SelectAll=Select All +TraceControl_ImportDialog_DeselectAll=Deselect All + # Tree structure strings TraceControl_KernelDomainDisplayName=Kernel -- 2.34.1