### Eclipse Workspace Patch 1.0 #P org.eclipse.ui.ide Index: src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java,v retrieving revision 1.93 diff -u -r1.93 IDEWorkbenchMessages.java --- src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java 2 Feb 2011 16:13:16 -0000 1.93 +++ src/org/eclipse/ui/internal/ide/IDEWorkbenchMessages.java 24 Feb 2011 11:20:36 -0000 @@ -13,6 +13,7 @@ * Dina Sayed, dsayed@eg.ibm.com, IBM - bug 269844 * Serge Beauchamp (Freescale Semiconductor) - [252996] Resource filters * Markus Schorn (Wind River Systems) - bug 284447 + * James Blackburn (Broadcom Corp.) - bug 303517 *******************************************************************************/ package org.eclipse.ui.internal.ide; @@ -502,6 +503,8 @@ public static String IDEWorkspacePreference_savePriorToBuildingToolTip; public static String IDEWorkspacePreference_RefreshButtonText; public static String IDEWorkspacePreference_RefreshButtonToolTip; + public static String IDEWorkspacePreferencePage_RefreshFSButtonText; + public static String IDEWorkspacePreferencePage_RefreshFSButtonToolTip; public static String IDEWorkspacePreference_fileLineDelimiter; public static String IDEWorkspacePreference_defaultLineDelim; public static String IDEWorkspacePreference_defaultLineDelimProj; Index: src/org/eclipse/ui/internal/ide/messages.properties =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/messages.properties,v retrieving revision 1.221 diff -u -r1.221 messages.properties --- src/org/eclipse/ui/internal/ide/messages.properties 2 Feb 2011 16:13:16 -0000 1.221 +++ src/org/eclipse/ui/internal/ide/messages.properties 24 Feb 2011 11:20:37 -0000 @@ -16,6 +16,7 @@ # Serge Beauchamp (Freescale Semiconductor) - [252996] Resource filters # Serge Beauchamp (Freescale Semiconductor) - [229633] Group Support # Markus Schorn (Wind River Systems) - bug 284447 +# James Blackburn (Broadcom Corp.) - bug 303517 ############################################################################### # package: org.eclipse.ui.ide @@ -476,6 +477,8 @@ IDEWorkspacePreference_savePriorToBuildingToolTip= Save modified resources automatically before manual build IDEWorkspacePreference_RefreshButtonText=&Refresh automatically IDEWorkspacePreference_RefreshButtonToolTip=Automatically refresh external workspace changes +IDEWorkspacePreferencePage_RefreshFSButtonText=Refresh filesystem automatically +IDEWorkspacePreferencePage_RefreshFSButtonToolTip=Automatically refresh the filesystem to discover changes.\nPolls periodically where a FS notification hook doesn't exist. IDEWorkspacePreference_fileLineDelimiter=New text &file line delimiter IDEWorkspacePreference_defaultLineDelim=D&efault IDEWorkspacePreference_defaultLineDelimProj=Inh&erited from container Index: src/org/eclipse/ui/internal/ide/dialogs/IDEWorkspacePreferencePage.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/IDEWorkspacePreferencePage.java,v retrieving revision 1.10 diff -u -r1.10 IDEWorkspacePreferencePage.java --- src/org/eclipse/ui/internal/ide/dialogs/IDEWorkspacePreferencePage.java 16 Feb 2010 18:10:42 -0000 1.10 +++ src/org/eclipse/ui/internal/ide/dialogs/IDEWorkspacePreferencePage.java 24 Feb 2011 11:20:37 -0000 @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 2000, 2010 IBM Corporation and others. + * Copyright (c) 2000, 2011 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -9,6 +9,7 @@ * IBM Corporation - initial API and implementation * Dina Sayed, dsayed@eg.ibm.com, IBM - bug 269844 * Markus Schorn (Wind River Systems) - bug 284447 + * James Blackburn (Broadcom Corp.) - bug 303517 *******************************************************************************/ package org.eclipse.ui.internal.ide.dialogs; @@ -29,6 +30,8 @@ import org.eclipse.jface.util.PropertyChangeEvent; import org.eclipse.osgi.util.NLS; import org.eclipse.swt.SWT; +import org.eclipse.swt.events.SelectionAdapter; +import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Button; @@ -67,6 +70,7 @@ private FieldEditor workspaceName; private Button autoRefreshButton; + private Button fsRefreshButton; private Button closeUnrelatedProjectButton; @@ -259,10 +263,31 @@ this.autoRefreshButton.setText(IDEWorkbenchMessages.IDEWorkspacePreference_RefreshButtonText); this.autoRefreshButton.setToolTipText(IDEWorkbenchMessages.IDEWorkspacePreference_RefreshButtonToolTip); + this.fsRefreshButton = new Button(parent, SWT.CHECK); + this.fsRefreshButton.setText(IDEWorkbenchMessages.IDEWorkspacePreferencePage_RefreshFSButtonText); + this.fsRefreshButton.setToolTipText(IDEWorkbenchMessages.IDEWorkspacePreferencePage_RefreshFSButtonToolTip); + this.fsRefreshButton.addSelectionListener(new SelectionAdapter() { + /* (non-Javadoc) + * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) + */ + public void widgetSelected(SelectionEvent e) { + if (fsRefreshButton.getSelection()) { + autoRefreshButton.setSelection(true); + autoRefreshButton.setEnabled(false); + } else + autoRefreshButton.setEnabled(true); + } + }); + boolean autoRefresh = ResourcesPlugin.getPlugin() .getPluginPreferences().getBoolean( ResourcesPlugin.PREF_AUTO_REFRESH); + boolean fsRefresh = ResourcesPlugin.getPlugin() + .getPluginPreferences().getBoolean( + ResourcesPlugin.PREF_FS_REFRESH); this.autoRefreshButton.setSelection(autoRefresh); + this.fsRefreshButton.setSelection(fsRefresh); + this.autoRefreshButton.setEnabled(!this.fsRefreshButton.getSelection()); } /** @@ -380,12 +405,16 @@ boolean closeUnrelatedProj = store.getDefaultBoolean(IDEInternalPreferences.CLOSE_UNRELATED_PROJECTS); closeUnrelatedProjectButton.setSelection(closeUnrelatedProj); - + boolean autoRefresh = ResourcesPlugin.getPlugin() .getPluginPreferences().getDefaultBoolean( ResourcesPlugin.PREF_AUTO_REFRESH); + boolean fsRefresh = ResourcesPlugin.getPlugin() + .getPluginPreferences().getDefaultBoolean( + ResourcesPlugin.PREF_FS_REFRESH); autoRefreshButton.setSelection(autoRefresh); - + fsRefreshButton.setSelection(fsRefresh); + clearUserSettings = true; List encodings = WorkbenchEncoding.getDefinedEncodings(); @@ -451,7 +480,9 @@ boolean autoRefresh = autoRefreshButton.getSelection(); preferences.setValue(ResourcesPlugin.PREF_AUTO_REFRESH, autoRefresh); - + boolean fsRefresh = fsRefreshButton.getSelection(); + preferences.setValue(ResourcesPlugin.PREF_FS_REFRESH, fsRefresh); + boolean closeUnrelatedProj = closeUnrelatedProjectButton.getSelection(); getIDEPreferenceStore().setValue(IDEInternalPreferences.CLOSE_UNRELATED_PROJECTS, closeUnrelatedProj);