1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

2004-08-04 Alain Magloire

Provide filters for the Outliner.

	* src/org/eclipse/cdt/internal/ui/editor/CContentOutlinePage.java
	* src/org/eclipse/cdt/internal/ui/filters/MacroDirectiveFilter.java
	* src/org/eclipse/cdt/internal/ui/filters/UsingDirectiveFilter.java
	* plugin.properties
	* plugin.xml
This commit is contained in:
Alain Magloire 2004-08-04 20:05:53 +00:00
parent 903d1ac7a8
commit 43fcb10cb8
6 changed files with 114 additions and 7 deletions

View file

@ -1,3 +1,13 @@
2004-08-04 Alain Magloire
Provide filters for the Outliner.
* src/org/eclipse/cdt/internal/ui/editor/CContentOutlinePage.java
* src/org/eclipse/cdt/internal/ui/filters/MacroDirectiveFilter.java
* src/org/eclipse/cdt/internal/ui/filters/UsingDirectiveFilter.java
* plugin.properties
* plugin.xml
2004-08-04 Alain Magloire
Fix ShowInCView class

View file

@ -174,6 +174,13 @@ HideCFiles.description= Hides all C files
HideHeaderFiles.label= Header files
HideHeaderFiles.description= Hides all Header files
HideUsingDirective.label= Using directive
HideMacroDirective.description= Hides using directives
HideMacroDirective.label= Macro directive
HideMacrodirective.description= Hides Macro directives
#
WorkInProgress.name=Work In Progress
CDTSearch.name=Search

View file

@ -59,10 +59,13 @@
</adapter>
</factory>
</extension>
<!-- Implement our filters for C-View. -->
<!-- Implement our filters. -->
<extension
point="org.eclipse.cdt.ui.CElementFilters">
<!-- Implement our filters for C-View. -->
<filter
targetId="org.eclipse.cdt.ui.CView"
selected="true"
pattern=".*">
</filter>
@ -122,6 +125,23 @@
class="org.eclipse.cdt.internal.ui.filters.NonCElementFilter"
id="org.eclipse.cdt.internal.ui.CView.NonCElementFilter">
</filter>
<!-- Outline Page -->
<filter
targetId="org.eclipse.cdt.ui.COutlinePage"
name="%HideUsingDirective.label"
enabled="false"
description="%HideUsingDirective.description"
class="org.eclipse.cdt.internal.ui.filters.UsingDirectiveFilter"
id="org.eclipse.cdt.ui.COutlinePage.UsingDeclarationFilter">
</filter>
<filter
targetId="org.eclipse.cdt.ui.COutlinePage"
name="%HideMacroDirective.label"
enabled="false"
description="%HideMacroDirective.description"
class="org.eclipse.cdt.internal.ui.filters.MacroDirectiveFilter"
id="org.eclipse.cdt.ui.COutlinePage.MacroDirectiveFilter">
</filter>
</extension>
<extension
point="org.eclipse.cdt.ui.textHovers">

View file

@ -19,6 +19,7 @@ import org.eclipse.cdt.internal.ui.search.actions.SelectionSearchGroup;
import org.eclipse.cdt.internal.ui.util.ProblemTreeViewer;
import org.eclipse.cdt.ui.CUIPlugin;
import org.eclipse.cdt.ui.PreferenceConstants;
import org.eclipse.cdt.ui.actions.CustomFiltersActionGroup;
import org.eclipse.cdt.ui.actions.MemberFilterActionGroup;
import org.eclipse.cdt.ui.actions.OpenViewActionGroup;
import org.eclipse.cdt.ui.actions.RefactoringActionGroup;
@ -68,6 +69,11 @@ public class CContentOutlinePage extends Page implements IContentOutlinePage, IS
private ActionGroup fSelectionSearchGroup;
private ActionGroup fRefactoringActionGroup;
private ActionGroup fOpenViewActionGroup;
/**
* Custom filter action group.
* @since 3.0
*/
private CustomFiltersActionGroup fCustomFiltersActionGroup;
public class IncludeGroupingAction extends Action {
CContentOutlinePage outLine;
@ -95,6 +101,10 @@ public class CContentOutlinePage extends Page implements IContentOutlinePage, IS
}
}
public boolean isIncludesGroupingEnabled () {
return PreferenceConstants.getPreferenceStore().getBoolean(PreferenceConstants.OUTLINE_GROUP_INCLUDES);
}
}
/**
@ -261,7 +271,9 @@ public class CContentOutlinePage extends Page implements IContentOutlinePage, IS
fSelectionSearchGroup = new SelectionSearchGroup(this);
fRefactoringActionGroup = new RefactoringActionGroup(this, null);
fOpenViewActionGroup = new OpenViewActionGroup(this);
// Custom filter group
fCustomFiltersActionGroup= new CustomFiltersActionGroup("org.eclipse.cdt.ui.COutlinePage", getTreeViewer()); //$NON-NLS-1$
treeViewer.setInput(fInput);
WorkbenchHelp.setHelp(control, ICHelpContextIds.COUTLINE_VIEW);
}
@ -318,7 +330,9 @@ public class CContentOutlinePage extends Page implements IContentOutlinePage, IS
fMemberFilterActionGroup= new MemberFilterActionGroup(treeViewer, "COutlineViewer"); //$NON-NLS-1$
fMemberFilterActionGroup.fillActionBars(actionBars);
fCustomFiltersActionGroup.fillActionBars(actionBars);
IMenuManager menu= actionBars.getMenuManager();
menu.add(new Separator("EndFilterGroup")); //$NON-NLS-1$
@ -421,8 +435,4 @@ public class CContentOutlinePage extends Page implements IContentOutlinePage, IS
contentUpdated();
}
public boolean isIncludesGroupingEnabled () {
return PreferenceConstants.getPreferenceStore().getBoolean(PreferenceConstants.OUTLINE_GROUP_INCLUDES);
}
}

View file

@ -0,0 +1,30 @@
/*******************************************************************************
* Copyright (c) 2000, 2004 QNX Software Systems and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors:
* QNX Software Systems - Initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.internal.ui.filters;
import org.eclipse.cdt.core.model.IMacro;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerFilter;
/**
* Filter
*/
public class MacroDirectiveFilter extends ViewerFilter {
/*
* @see ViewerFilter
*/
public boolean select(Viewer viewer, Object parent, Object element) {
return !(element instanceof IMacro);
}
}

View file

@ -0,0 +1,30 @@
/*******************************************************************************
* Copyright (c) 2000, 2004 QNX Software Systems and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors:
* QNX Software Systems - Initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.internal.ui.filters;
import org.eclipse.cdt.core.model.IUsing;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerFilter;
/**
* Filters package declarations
*/
public class UsingDirectiveFilter extends ViewerFilter {
/*
* @see ViewerFilter
*/
public boolean select(Viewer viewer, Object parent, Object element) {
return !(element instanceof IUsing);
}
}