diff options
author | Kevin Sawicki | 2011-06-06 12:07:35 +0000 |
---|---|---|
committer | Matthias Sohn | 2011-06-06 12:07:35 +0000 |
commit | d49887163f1e27a55a9bc0b7db51aa6588f1cd78 (patch) | |
tree | 7ceb8fc85e19e7d609865a1c803a3ff5244b5e54 /org.eclipse.egit.ui/src/org/eclipse/egit | |
parent | 607c0d776160530e03aa20cdea322631312655c6 (diff) | |
download | egit-d49887163f1e27a55a9bc0b7db51aa6588f1cd78.tar.gz egit-d49887163f1e27a55a9bc0b7db51aa6588f1cd78.tar.xz egit-d49887163f1e27a55a9bc0b7db51aa6588f1cd78.zip |
Use check/uncheck buttons instead of toggle selection button.
This makes the repository search dialog consistent with the
commit search dialog.
Change-Id: I140d3208efa721e915526618e05b33eb38137135
Signed-off-by: Kevin Sawicki <kevin@github.com>
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
Diffstat (limited to 'org.eclipse.egit.ui/src/org/eclipse/egit')
3 files changed, 43 insertions, 18 deletions
diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java index 47f68df520..109751df4c 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/UIText.java @@ -865,6 +865,9 @@ public class UIText extends NLS { public static String RepositorySearchDialog_browse; /** */ + public static String RepositorySearchDialog_CheckAllRepositories; + + /** */ public static String RepositorySearchDialog_directory; /** */ @@ -883,7 +886,7 @@ public class UIText extends NLS { public static String RepositorySearchDialog_searchRepositoriesMessage; /** */ - public static String RepositorySearchDialog_ToggleSelectionButton; + public static String RepositorySearchDialog_UncheckAllRepositories; /** */ public static String RepositorySelectionPage_BrowseLocalFile; diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java index 721bc33e11..90b8a20db7 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/RepositorySearchDialog.java @@ -27,6 +27,7 @@ import org.eclipse.egit.core.Activator; import org.eclipse.egit.ui.UIIcons; import org.eclipse.egit.ui.UIPreferences; import org.eclipse.egit.ui.UIText; +import org.eclipse.egit.ui.UIUtils; import org.eclipse.egit.ui.internal.CachedCheckboxTreeViewer; import org.eclipse.egit.ui.internal.FilteredCheckboxTree; import org.eclipse.jface.dialogs.IMessageProvider; @@ -63,7 +64,8 @@ import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; -import org.eclipse.swt.widgets.TreeItem; +import org.eclipse.swt.widgets.ToolBar; +import org.eclipse.swt.widgets.ToolItem; import org.eclipse.ui.dialogs.PatternFilter; import org.osgi.service.prefs.BackingStoreException; @@ -90,7 +92,9 @@ public class RepositorySearchDialog extends TitleAreaDialog { private Button searchButton; - private Button toggleSelectionButton; + private ToolItem checkAllItem; + + private ToolItem uncheckAllItem; private final ResourceManager fImageCache = new LocalResourceManager( JFaceResources.getResources()); @@ -324,25 +328,41 @@ public class RepositorySearchDialog extends TitleAreaDialog { GridDataFactory.fillDefaults().grab(true, true).minSize(0, 300) .applyTo(fTree); - Composite buttonColumn = new Composite(searchResultGroup, SWT.NONE); - buttonColumn.setLayout(new GridLayout(1, false)); + ToolBar toolbar = new ToolBar(searchResultGroup, SWT.FLAT + | SWT.VERTICAL); GridDataFactory.fillDefaults().align(SWT.FILL, SWT.BEGINNING).applyTo( - buttonColumn); + toolbar); - toggleSelectionButton = new Button(buttonColumn, SWT.NONE); - GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo( - toggleSelectionButton); - toggleSelectionButton - .setText(UIText.RepositorySearchDialog_ToggleSelectionButton); - toggleSelectionButton.setEnabled(false); - toggleSelectionButton.addSelectionListener(new SelectionAdapter() { + checkAllItem = new ToolItem(toolbar, SWT.PUSH); + checkAllItem + .setToolTipText(UIText.RepositorySearchDialog_CheckAllRepositories); + checkAllItem.setEnabled(false); + Image checkImage = UIIcons.CHECK_ALL.createImage(); + UIUtils.hookDisposal(checkAllItem, checkImage); + checkAllItem.setImage(checkImage); + checkAllItem.addSelectionListener(new SelectionAdapter() { + + public void widgetSelected(SelectionEvent e) { + fTreeViewer.setAllChecked(true); + enableOk(); + } + + }); + + uncheckAllItem = new ToolItem(toolbar, SWT.PUSH); + uncheckAllItem + .setToolTipText(UIText.RepositorySearchDialog_UncheckAllRepositories); + uncheckAllItem.setEnabled(false); + Image uncheckImage = UIIcons.UNCHECK_ALL.createImage(); + UIUtils.hookDisposal(uncheckAllItem, uncheckImage); + uncheckAllItem.setImage(uncheckImage); + uncheckAllItem.addSelectionListener(new SelectionAdapter() { - @Override public void widgetSelected(SelectionEvent e) { - for (TreeItem item : fTreeViewer.getTree().getItems()) - fTreeViewer.setChecked(item.getData(), !item.getChecked()); + fTreeViewer.setAllChecked(false); enableOk(); } + }); // TODO this isn't the most optimal way of handling this... ideally we @@ -493,7 +513,8 @@ public class RepositorySearchDialog extends TitleAreaDialog { setMessage(UIText.RepositorySearchDialog_NothingFoundMessage, IMessageProvider.INFORMATION); - toggleSelectionButton.setEnabled(!validDirs.isEmpty()); + checkAllItem.setEnabled(!validDirs.isEmpty()); + uncheckAllItem.setEnabled(!validDirs.isEmpty()); fTree.clearFilter(); fTreeViewer.setInput(validDirs); // this sets all to selected diff --git a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties index 900a9c0228..bb85c6ffbb 100644 --- a/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties +++ b/org.eclipse.egit.ui/src/org/eclipse/egit/ui/uitext.properties @@ -295,13 +295,14 @@ RepositorySearchDialog_SearchTooltip=Performs a search with the current search c RepositorySearchDialog_SomeDirectoriesHiddenMessage={0} directories are hidden as they have alredy been added RepositorySearchDialog_DirectoryNotFoundMessage=Directory {0} does not exist RepositorySearchDialog_browse=&Browse... +RepositorySearchDialog_CheckAllRepositories=Check All Repositories RepositorySearchDialog_directory=&Directory: RepositorySearchDialog_EnterDirectoryToolTip=Enter a local file system directory from which to start the search RepositorySearchDialog_errorOccurred=Error occurred RepositorySearchDialog_NoSearchAvailableMessage=No search results available for current search criteria, click Search button to update the list RepositorySearchDialog_NothingFoundMessage=No Git Repositories found RepositorySearchDialog_searchRepositoriesMessage=Search for local Git repositories on the file system -RepositorySearchDialog_ToggleSelectionButton=&Toggle Selection +RepositorySearchDialog_UncheckAllRepositories=Uncheck All Repositories RepositorySelectionPage_BrowseLocalFile=Local file... RepositorySelectionPage_sourceSelectionTitle=Source Git Repository RepositorySelectionPage_sourceSelectionDescription=Enter the location of the source repository. |