|
Lines 91-97
Link Here
|
| 91 |
import org.eclipse.ui.internal.ide.IDEWorkbenchMessages; |
91 |
import org.eclipse.ui.internal.ide.IDEWorkbenchMessages; |
| 92 |
import org.eclipse.ui.internal.ide.IDEWorkbenchPlugin; |
92 |
import org.eclipse.ui.internal.ide.IDEWorkbenchPlugin; |
| 93 |
import org.eclipse.ui.internal.ide.IIDEHelpContextIds; |
93 |
import org.eclipse.ui.internal.ide.IIDEHelpContextIds; |
| 94 |
import org.eclipse.ui.internal.ide.misc.CompoundResourceFilter; |
|
|
| 95 |
import org.eclipse.ui.plugin.AbstractUIPlugin; |
94 |
import org.eclipse.ui.plugin.AbstractUIPlugin; |
| 96 |
|
95 |
|
| 97 |
/** |
96 |
/** |
|
Lines 179-185
Link Here
|
| 179 |
} |
178 |
} |
| 180 |
|
179 |
|
| 181 |
boolean changed = false; |
180 |
boolean changed = false; |
| 182 |
public LinkedList/* <IResourceFilter> */trash = new LinkedList/* <IResourceFilter> */(); |
181 |
public LinkedList/* <IResourceFilter> */trash = new LinkedList/* |
|
|
182 |
* <IResourceFilter |
| 183 |
* > |
| 184 |
*/(); |
| 183 |
|
185 |
|
| 184 |
public void add(FilterCopy newFilter) { |
186 |
public void add(FilterCopy newFilter) { |
| 185 |
super.addChild(newFilter); |
187 |
super.addChild(newFilter); |
|
Lines 347-355
Link Here
|
| 347 |
.bind( |
349 |
.bind( |
| 348 |
IDEWorkbenchMessages.ResourceFilterPage_includeOnlyColumn, |
350 |
IDEWorkbenchMessages.ResourceFilterPage_includeOnlyColumn, |
| 349 |
null); |
351 |
null); |
| 350 |
return NLS.bind( |
352 |
return NLS |
| 351 |
IDEWorkbenchMessages.ResourceFilterPage_excludeAllColumn, |
353 |
.bind( |
| 352 |
null); |
354 |
IDEWorkbenchMessages.ResourceFilterPage_excludeAllColumn, |
|
|
355 |
null); |
| 353 |
} |
356 |
} |
| 354 |
return getFilterTypeName(filter); |
357 |
return getFilterTypeName(filter); |
| 355 |
} |
358 |
} |
|
Lines 367-379
Link Here
|
| 367 |
IDEWorkbenchMessages.ResourceFilterPage_filesColumn, |
370 |
IDEWorkbenchMessages.ResourceFilterPage_filesColumn, |
| 368 |
null); |
371 |
null); |
| 369 |
if (includeFolders) |
372 |
if (includeFolders) |
| 370 |
return NLS.bind( |
373 |
return NLS |
| 371 |
IDEWorkbenchMessages.ResourceFilterPage_foldersColumn, |
374 |
.bind( |
| 372 |
null); |
375 |
IDEWorkbenchMessages.ResourceFilterPage_foldersColumn, |
|
|
376 |
null); |
| 373 |
} |
377 |
} |
| 374 |
if (column.equals(FilterTypeUtil.ARGUMENTS)) { |
378 |
if (column.equals(FilterTypeUtil.ARGUMENTS)) { |
| 375 |
if (filter.hasStringArguments()) |
379 |
if (filter.hasStringArguments()) |
| 376 |
return filter.getArguments(); |
380 |
return filter.getArguments() != null ? filter |
|
|
381 |
.getArguments().toString() : ""; //$NON-NLS-1$ |
| 377 |
if ((filter.getChildrenLimit() > 0) |
382 |
if ((filter.getChildrenLimit() > 0) |
| 378 |
&& !filter.isUnderAGroupFilter()) |
383 |
&& !filter.isUnderAGroupFilter()) |
| 379 |
return "< " + getFilterTypeName(filter) + " >"; //$NON-NLS-1$ //$NON-NLS-2$ |
384 |
return "< " + getFilterTypeName(filter) + " >"; //$NON-NLS-1$ //$NON-NLS-2$ |
|
Lines 1156-1163
Link Here
|
| 1156 |
else |
1161 |
else |
| 1157 |
filter.setType(type); |
1162 |
filter.setType(type); |
| 1158 |
} |
1163 |
} |
| 1159 |
if (property.equals(FilterTypeUtil.ARGUMENTS)) |
1164 |
if (property.equals(FilterTypeUtil.ARGUMENTS)) { |
| 1160 |
filter.setArguments((String) value); |
1165 |
filter.setArguments(value.equals("") ? null : value); //$NON-NLS-1$ |
|
|
1166 |
} |
| 1161 |
} |
1167 |
} |
| 1162 |
|
1168 |
|
| 1163 |
static IFilterDescriptor getDescriptor(String id) { |
1169 |
static IFilterDescriptor getDescriptor(String id) { |
|
Lines 1206-1212
Link Here
|
| 1206 |
(filter.getType() & IResourceFilter.INHERITABLE) != 0); |
1212 |
(filter.getType() & IResourceFilter.INHERITABLE) != 0); |
| 1207 |
|
1213 |
|
| 1208 |
if (property.equals(ARGUMENTS)) |
1214 |
if (property.equals(ARGUMENTS)) |
| 1209 |
return filter.getArguments(); |
1215 |
return filter.getArguments() != null ? filter.getArguments() : ""; //$NON-NLS-1$ |
| 1210 |
return null; |
1216 |
return null; |
| 1211 |
} |
1217 |
} |
| 1212 |
|
1218 |
|
|
Lines 1310-1317
Link Here
|
| 1310 |
} |
1316 |
} |
| 1311 |
|
1317 |
|
| 1312 |
class FilterCopy implements IResourceFilter { |
1318 |
class FilterCopy implements IResourceFilter { |
| 1313 |
static String EMPTY = ""; //$NON-NLS-1$ |
1319 |
Object arguments = null; |
| 1314 |
String arguments = EMPTY; |
|
|
| 1315 |
String id = null; |
1320 |
String id = null; |
| 1316 |
IPath path = null; |
1321 |
IPath path = null; |
| 1317 |
IProject project = null; |
1322 |
IProject project = null; |
|
Lines 1366-1373
Link Here
|
| 1366 |
path = filter.getPath(); |
1371 |
path = filter.getPath(); |
| 1367 |
project = filter.getProject(); |
1372 |
project = filter.getProject(); |
| 1368 |
type = filter.getType(); |
1373 |
type = filter.getType(); |
| 1369 |
if (arguments == null) |
|
|
| 1370 |
arguments = EMPTY; |
| 1371 |
} |
1374 |
} |
| 1372 |
|
1375 |
|
| 1373 |
public boolean hasChanged() { |
1376 |
public boolean hasChanged() { |
|
Lines 1387-1393
Link Here
|
| 1387 |
id = FilterTypeUtil.getDefaultFilterID(); |
1390 |
id = FilterTypeUtil.getDefaultFilterID(); |
| 1388 |
} |
1391 |
} |
| 1389 |
|
1392 |
|
| 1390 |
public String getArguments() { |
1393 |
public Object getArguments() { |
| 1391 |
return arguments; |
1394 |
return arguments; |
| 1392 |
} |
1395 |
} |
| 1393 |
|
1396 |
|
|
Lines 1407-1413
Link Here
|
| 1407 |
return type; |
1410 |
return type; |
| 1408 |
} |
1411 |
} |
| 1409 |
|
1412 |
|
| 1410 |
public void setArguments(String arguments) { |
1413 |
public void setArguments(Object arguments) { |
| 1411 |
this.arguments = arguments; |
1414 |
this.arguments = arguments; |
| 1412 |
argumentsChanged(); |
1415 |
argumentsChanged(); |
| 1413 |
} |
1416 |
} |
|
Lines 1487-1499
Link Here
|
| 1487 |
if (children == null) { |
1490 |
if (children == null) { |
| 1488 |
if (getChildrenLimit() > 0) { |
1491 |
if (getChildrenLimit() > 0) { |
| 1489 |
children = new LinkedList(); |
1492 |
children = new LinkedList(); |
| 1490 |
IResourceFilter[] filters = CompoundResourceFilter.unserialize( |
1493 |
IResourceFilter[] filters = (IResourceFilter[]) getArguments(); |
| 1491 |
getProject(), getArguments()); |
1494 |
if (filters != null) |
| 1492 |
for (int i = 0; i < filters.length; i++) { |
1495 |
for (int i = 0; i < filters.length; i++) { |
| 1493 |
FilterCopy child = new FilterCopy(filters[i]); |
1496 |
FilterCopy child = new FilterCopy(filters[i]); |
| 1494 |
child.parent = this; |
1497 |
child.parent = this; |
| 1495 |
children.add(child); |
1498 |
children.add(child); |
| 1496 |
} |
1499 |
} |
| 1497 |
} |
1500 |
} |
| 1498 |
} |
1501 |
} |
| 1499 |
} |
1502 |
} |
|
Lines 1523-1531
Link Here
|
| 1523 |
protected void argumentsChanged() { |
1526 |
protected void argumentsChanged() { |
| 1524 |
initializeChildren(); |
1527 |
initializeChildren(); |
| 1525 |
if (children != null) |
1528 |
if (children != null) |
| 1526 |
arguments = CompoundResourceFilter |
1529 |
arguments = (FilterCopy[]) children.toArray(new FilterCopy[0]); |
| 1527 |
.serialize((FilterCopy[]) children |
|
|
| 1528 |
.toArray(new FilterCopy[0])); |
| 1529 |
FilterCopy up = parent; |
1530 |
FilterCopy up = parent; |
| 1530 |
while (up != null) { |
1531 |
while (up != null) { |
| 1531 |
up.serializeChildren(); |
1532 |
up.serializeChildren(); |
|
Lines 1680-1686
Link Here
|
| 1680 |
* |
1681 |
* |
| 1681 |
*/ |
1682 |
*/ |
| 1682 |
private void setArgumentLabelEnabled() { |
1683 |
private void setArgumentLabelEnabled() { |
| 1683 |
Color color = argumentsLabel.getDisplay().getSystemColor(filter.hasStringArguments() ? SWT.COLOR_BLACK : SWT.COLOR_GRAY); |
1684 |
Color color = argumentsLabel.getDisplay().getSystemColor( |
|
|
1685 |
filter.hasStringArguments() ? SWT.COLOR_BLACK : SWT.COLOR_GRAY); |
| 1684 |
argumentsLabel.setForeground(color); |
1686 |
argumentsLabel.setForeground(color); |
| 1685 |
} |
1687 |
} |
| 1686 |
|
1688 |
|
|
Lines 1707-1713
Link Here
|
| 1707 |
private void createIdArea(Font font, Composite composite) { |
1709 |
private void createIdArea(Font font, Composite composite) { |
| 1708 |
GridData data; |
1710 |
GridData data; |
| 1709 |
Group idComposite = createGroup(font, composite, NLS.bind( |
1711 |
Group idComposite = createGroup(font, composite, NLS.bind( |
| 1710 |
IDEWorkbenchMessages.ResourceFilterPage_columnFilterID, null), true); |
1712 |
IDEWorkbenchMessages.ResourceFilterPage_columnFilterID, null), |
|
|
1713 |
true); |
| 1711 |
idCombo = new Combo(idComposite, SWT.READ_ONLY); |
1714 |
idCombo = new Combo(idComposite, SWT.READ_ONLY); |
| 1712 |
idCombo.setItems(FilterTypeUtil.getFilterNames(filter |
1715 |
idCombo.setItems(FilterTypeUtil.getFilterNames(filter |
| 1713 |
.getChildrenLimit() > 0)); |
1716 |
.getChildrenLimit() > 0)); |
|
Lines 1797-1803
Link Here
|
| 1797 |
* @param composite |
1800 |
* @param composite |
| 1798 |
* @return the group |
1801 |
* @return the group |
| 1799 |
*/ |
1802 |
*/ |
| 1800 |
private Group createGroup(Font font, Composite composite, String text, boolean grabExcessVerticalSpace) { |
1803 |
private Group createGroup(Font font, Composite composite, String text, |
|
|
1804 |
boolean grabExcessVerticalSpace) { |
| 1801 |
GridLayout layout; |
1805 |
GridLayout layout; |
| 1802 |
GridData data; |
1806 |
GridData data; |
| 1803 |
Group modeComposite = new Group(composite, SWT.NONE); |
1807 |
Group modeComposite = new Group(composite, SWT.NONE); |