Skip to content

Commit fd0f45d

Browse files
committed
Merge pull request #47 from marcphilipp/source_folder_filter
Source folder filter
2 parents 1d21f0e + dcca3c6 commit fd0f45d

20 files changed

+799
-51
lines changed
Binary file not shown.
635 Bytes
Loading
662 Bytes
Loading

org.projectusus.ui.dependencygraph/plugin.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
<?eclipse version="3.4"?>
33
<plugin>
44
<extension point="org.eclipse.ui.views">
5-
<view class="org.projectusus.ui.dependencygraph.ClassGraphView"
5+
<view class="org.projectusus.ui.dependencygraph.views.ClassGraphView"
66
icon="icons/graph-class.gif"
77
id="org.projectusus.ui.dependencygraph.ClassGraphView"
88
category="org.projectusus.ui.viewCategory"
99
name="Usus Class Graph"/>
10-
<view class="org.projectusus.ui.dependencygraph.PackageGraphView"
10+
<view class="org.projectusus.ui.dependencygraph.views.PackageGraphView"
1111
icon="icons/graph-package.gif"
1212
id="org.projectusus.ui.dependencygraph.PackageGraphView"
1313
category="org.projectusus.ui.viewCategory"

org.projectusus.ui.dependencygraph/src/org/projectusus/ui/dependencygraph/ClassGraphView.java

Lines changed: 0 additions & 38 deletions
This file was deleted.

org.projectusus.ui.dependencygraph/src/org/projectusus/ui/dependencygraph/handlers/ChangeZoom.java renamed to org.projectusus.ui.dependencygraph/src/org/projectusus/ui/dependencygraph/common/ChangeZoom.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.projectusus.ui.dependencygraph.handlers;
1+
package org.projectusus.ui.dependencygraph.common;
22

33
import static org.projectusus.ui.dependencygraph.DependencyGraphPlugin.plugin;
44

org.projectusus.ui.dependencygraph/src/org/projectusus/ui/dependencygraph/common/DependencyGraphView.java

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package org.projectusus.ui.dependencygraph.common;
22

3+
import static java.util.Collections.emptyList;
4+
35
import java.util.ArrayList;
6+
import java.util.Collection;
47
import java.util.HashSet;
58
import java.util.LinkedList;
69
import java.util.List;
@@ -28,6 +31,7 @@
2831
import org.eclipse.swt.layout.GridLayout;
2932
import org.eclipse.swt.widgets.Button;
3033
import org.eclipse.swt.widgets.Composite;
34+
import org.eclipse.swt.widgets.Control;
3135
import org.eclipse.swt.widgets.Display;
3236
import org.eclipse.ui.IActionBars;
3337
import org.eclipse.ui.IEditorPart;
@@ -48,10 +52,9 @@
4852
import org.projectusus.ui.dependencygraph.filters.LimitNodeFilter;
4953
import org.projectusus.ui.dependencygraph.filters.NodeAndEdgeFilter;
5054
import org.projectusus.ui.dependencygraph.filters.PackagenameNodeFilter;
51-
import org.projectusus.ui.dependencygraph.handlers.ChangeZoom;
5255
import org.projectusus.ui.dependencygraph.nodes.GraphNode;
5356

54-
public abstract class DependencyGraphView extends ViewPart implements IRestrictNodesFilterProvider, IShowInTarget, IZoomableWorkbenchPart, IMenuListener {
57+
public abstract class DependencyGraphView extends ViewPart implements IRestrictNodesFilterProvider, IShowInTarget, IZoomableWorkbenchPart, IMenuListener, IRefreshable {
5558

5659
private final DependencyGraphModel model;
5760
private DependencyGraphViewer graphViewer;
@@ -135,9 +138,10 @@ private Composite createFilterArea( Composite composite ) {
135138
layout.marginTop = 5;
136139
filterArea.setLayout( layout );
137140

138-
createAdditionalWidget( filterArea );
141+
Control additionalWidgets = createAdditionalWidgets( filterArea );
139142
createLayoutComboViewer( filterArea );
140143

144+
additionalWidgets.setLayoutData( new GridData( SWT.LEFT, SWT.CENTER, true, true ) );
141145
filterArea.setLayoutData( new GridData( SWT.FILL, SWT.CENTER, false, false ) );
142146

143147
return filterArea;
@@ -156,9 +160,12 @@ public void run() {
156160
} );
157161
}
158162

159-
protected void createAdditionalWidget( Composite filterArea ) {
160-
final Button checkbox = new Button( filterArea, SWT.CHECK );
161-
checkbox.setLayoutData( new GridData( SWT.LEFT, SWT.CENTER, true, true ) );
163+
protected Control createAdditionalWidgets( Composite filterArea ) {
164+
return createRestrictingCheckBox( filterArea );
165+
}
166+
167+
protected final Button createRestrictingCheckBox( Composite parent ) {
168+
final Button checkbox = new Button( parent, SWT.CHECK );
162169
checkbox.setText( getCheckboxLabelName() );
163170
checkbox.addSelectionListener( new SelectionAdapter() {
164171
@Override
@@ -173,6 +180,7 @@ public void run() {
173180
}
174181
} );
175182
setRestricting( false );
183+
return checkbox;
176184
}
177185

178186
private static Composite createGraphArea( Composite composite ) {
@@ -184,7 +192,15 @@ private static Composite createGraphArea( Composite composite ) {
184192

185193
private void createGraphViewer( DependencyGraphViewer dependencyGraphViewer ) {
186194
graphViewer = dependencyGraphViewer;
187-
graphViewer.setFilters( new ViewerFilter[] { new LimitNodeFilter( this ), hideNodesFilter } );
195+
List<ViewerFilter> filters = new ArrayList<ViewerFilter>();
196+
filters.add( new LimitNodeFilter( this ) );
197+
filters.add( hideNodesFilter );
198+
filters.addAll( createAdditionalFilters() );
199+
graphViewer.setFilters( filters.toArray( new ViewerFilter[filters.size()] ) );
200+
}
201+
202+
protected Collection<? extends ViewerFilter> createAdditionalFilters() {
203+
return emptyList();
188204
}
189205

190206
// hier kommt man an, wenn man in den Hotspots einen Package Cycle doppelklickt:
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
package org.projectusus.ui.dependencygraph.common;
2+
3+
public interface IRefreshable {
4+
5+
void refresh();
6+
7+
}

org.projectusus.ui.dependencygraph/src/org/projectusus/ui/dependencygraph/handlers/OpenHotspotInClassGraph.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
import org.eclipse.ui.PlatformUI;
1010
import org.projectusus.core.basis.SinglePackageHotspot;
1111
import org.projectusus.core.filerelations.model.ClassDescriptor;
12-
import org.projectusus.ui.dependencygraph.ClassGraphView;
1312
import org.projectusus.ui.dependencygraph.filters.ClassDescriptorNodeFilter;
13+
import org.projectusus.ui.dependencygraph.views.ClassGraphView;
1414
import org.projectusus.ui.internal.DisplayHotspot;
1515
import org.projectusus.ui.internal.hotspots.commands.AbstractOpenHotspotHandler;
1616

org.projectusus.ui.dependencygraph/src/org/projectusus/ui/dependencygraph/handlers/OpenHotspotInPackageGraph.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
import org.eclipse.zest.core.viewers.EntityConnectionData;
1212
import org.projectusus.core.basis.PackageHotspot;
1313
import org.projectusus.core.filerelations.model.Packagename;
14-
import org.projectusus.ui.dependencygraph.PackageGraphView;
1514
import org.projectusus.ui.dependencygraph.filters.PackagenameNodeFilter;
15+
import org.projectusus.ui.dependencygraph.views.PackageGraphView;
1616
import org.projectusus.ui.internal.DisplayHotspot;
1717
import org.projectusus.ui.internal.hotspots.commands.AbstractOpenHotspotHandler;
1818

0 commit comments

Comments
 (0)