From 0e59c966c039c0da48348434e45519f20f34528e Mon Sep 17 00:00:00 2001 From: Doug Schaefer Date: Fri, 11 Jul 2003 22:41:45 +0000 Subject: [PATCH] Patch for Bogdan Gheorghe: - support for class specifier search - a new C/C++ search menu item --- .../ui/search/OpenCSearchPageAction.java | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/OpenCSearchPageAction.java diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/OpenCSearchPageAction.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/OpenCSearchPageAction.java new file mode 100644 index 00000000000..c99ff3ccbad --- /dev/null +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/search/OpenCSearchPageAction.java @@ -0,0 +1,54 @@ +/* + * Created on Jul 11, 2003 + */ +package org.eclipse.cdt.internal.ui.search; + +import org.eclipse.cdt.ui.CUIPlugin; +import org.eclipse.jface.action.IAction; +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.search.ui.SearchUI; +import org.eclipse.swt.widgets.Shell; +import org.eclipse.ui.IWorkbenchWindow; +import org.eclipse.ui.IWorkbenchWindowActionDelegate; + +/** + * @author bgheorgh + */ +public class OpenCSearchPageAction implements IWorkbenchWindowActionDelegate { + + private static final String C_SEARCH_PAGE_ID= "org.eclipse.cdt.ui.CSearchPage"; + + private IWorkbenchWindow fWindow; + + public OpenCSearchPageAction() { + super(); + // TODO Auto-generated constructor stub + } + + public void init(IWorkbenchWindow window) { + fWindow= window; + } + + public void run(IAction action) { + if (fWindow == null || fWindow.getActivePage() == null) { + beep(); + return; + } + SearchUI.openSearchDialog(fWindow, C_SEARCH_PAGE_ID); + } + + public void selectionChanged(IAction action, ISelection selection) { + // do nothing since the action isn't selection dependent. + } + + public void dispose() { + fWindow= null; + } + + protected void beep() { + Shell shell= CUIPlugin.getDefault().getActiveWorkbenchShell(); + if (shell != null && shell.getDisplay() != null) + shell.getDisplay().beep(); + } + +}