Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-patch] Indexer Property Change move to C++ Property.

Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/ChangeLog,v
retrieving revision 1.28
diff -u -r1.28 ChangeLog
--- ChangeLog	20 Nov 2002 21:16:00 -0000	1.28
+++ ChangeLog	20 Nov 2002 22:06:29 -0000
@@ -1,3 +1,12 @@
+2002-11-20 Alain Magloire
+
+	Move the Index property page in the C/C++ project category.
+	* src/.../internal/ui/preferences/CIndexerManager.java: Removed.
+	* src/.../internal/ui/preferences/CProjectPropertyPage.java (indexerBlock):
+	Add the indexer block to the CProjectPropertyPage tab.
+	* src/.../ui/wizard/IndexerBlock.java: New file implementing
+	the indexer TabItem.
+
 2002-11-20 David Inglis
 	* src/.../internal/ui/cview/CView.java
 	Added support for label decorators
Index: plugin.properties
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/plugin.properties,v
retrieving revision 1.12
diff -u -r1.12 plugin.properties
--- plugin.properties	13 Nov 2002 20:39:29 -0000	1.12
+++ plugin.properties	20 Nov 2002 22:06:29 -0000
@@ -47,7 +47,6 @@
 CPluginEditorPreferencePage.name=C/C++ Editor
 CPluginTemplatePreferencePage.name=Code Templates
 CProjectPropertyPage.name=C/C++ Project
-CIndexerPropertyPage.name=C/C++ Indexer
 CLaunchingPropertyPage.executionArguments.name=C Execution Arguments
 CApplicationLauncher.label=Executable
 CApplicationLauncher.description=Launch a local command
Index: plugin.xml
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/plugin.xml,v
retrieving revision 1.14
diff -u -r1.14 plugin.xml
--- plugin.xml	15 Nov 2002 20:00:11 -0000	1.14
+++ plugin.xml	20 Nov 2002 22:06:29 -0000
@@ -263,17 +263,6 @@
                value="org.eclipse.cdt.core.cnature">
          </filter>
       </page>
-      <page
-            objectClass="org.eclipse.core.resources.IProject"
-		    adaptable="true"
-            name="%CIndexerPropertyPage.name"
-            class="org.eclipse.cdt.internal.ui.preferences.CIndexerPropertyPage"
-            id="org.eclipse.cdt.ui.preferences.CIndexerPropertyPage">
-         <filter
-               name="nature"
-               value="org.eclipse.cdt.core.cnature">
-         </filter>
-      </page>
    </extension>
    <extension
          point="org.eclipse.ui.editorActions">
Index: src/org/eclipse/cdt/internal/ui/preferences/CIndexerPropertyPage.java
===================================================================
RCS file: src/org/eclipse/cdt/internal/ui/preferences/CIndexerPropertyPage.java
diff -N src/org/eclipse/cdt/internal/ui/preferences/CIndexerPropertyPage.java
--- src/org/eclipse/cdt/internal/ui/preferences/CIndexerPropertyPage.java	13 Nov 2002 13:19:12 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,62 +0,0 @@
-package org.eclipse.cdt.internal.ui.preferences;
-
-/*
- * (c) Copyright IBM Corp. 2000, 2001.
- * All Rights Reserved.
- */
-
-import org.eclipse.cdt.core.CCorePlugin;
-import org.eclipse.cdt.core.index.IndexModel;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-public class CIndexerPropertyPage extends PropertyPage  {
-	private Button indexerSwitch;
-
-	protected Control createContents(Composite parent) {
-		Composite composite= new Composite(parent, SWT.NONE);
-		GridLayout grid = new GridLayout();
-		grid.numColumns = 1;
-		composite.setLayout(grid);
-		
-		IProject project= getProject();
-		IndexModel indexer = CCorePlugin.getDefault().getIndexModel();			
-
-		indexerSwitch = new Button(composite, SWT.CHECK | SWT.RIGHT);
-		indexerSwitch.setAlignment(SWT.LEFT);
-		indexerSwitch.setText("Enable indexing service for this project");
-		indexerSwitch.setSelection(indexer.isEnabled(project));
-		return composite;
-	}
-
-	/**
-	 * @see PreferencePage#performOk
-	 */	
-	public boolean performOk() {
-		IProject project= getProject();
-		IndexModel indexer = CCorePlugin.getDefault().getIndexModel();			
-		indexer.setEnabled(project, indexerSwitch.getSelection());
-		return true;
-	}
-		
-	private IProject getProject() {
-		Object element= getElement();
-		if (element instanceof IProject) {
-			return (IProject)element;
-		}
-		return null;
-	} 
-
-	protected void performDefaults() {
-		IProject project= getProject();
-		IndexModel indexer = CCorePlugin.getDefault().getIndexModel();			
-		indexer.setEnabled(project, false);
-		super.performDefaults();
-	}
-
-}
Index: src/org/eclipse/cdt/internal/ui/preferences/CProjectPropertyPage.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/preferences/CProjectPropertyPage.java,v
retrieving revision 1.6
diff -u -r1.6 CProjectPropertyPage.java
--- src/org/eclipse/cdt/internal/ui/preferences/CProjectPropertyPage.java	31 Oct 2002 20:41:08 -0000	1.6
+++ src/org/eclipse/cdt/internal/ui/preferences/CProjectPropertyPage.java	20 Nov 2002 22:06:29 -0000
@@ -9,6 +9,7 @@
 import org.eclipse.cdt.internal.ui.dialogs.IStatusChangeListener;
 import org.eclipse.cdt.internal.ui.dialogs.StatusTool;
 import org.eclipse.cdt.ui.CUIPlugin;
+import org.eclipse.cdt.ui.wizards.IndexerBlock;
 import org.eclipse.cdt.ui.wizards.SettingsBlock;
 import org.eclipse.cdt.utils.ui.controls.TabFolderLayout;
 import org.eclipse.cdt.utils.ui.swt.IValidation;
@@ -32,6 +33,7 @@
 	
 	private TabFolder folder;
 	SettingsBlock settingsBlock;
+	IndexerBlock indexerBlock;
 
 	protected Control createContents(Composite parent) {
 		Composite composite= new Composite(parent, SWT.NONE);
@@ -60,6 +62,15 @@
 		item2.setData(settingsBlock);
 		item2.setControl(settingsBlock.getControl(folder));
 
+		indexerBlock = new IndexerBlock(this, getProject());
+		TabItem item3 = new TabItem(folder, SWT.NONE);
+		item3.setText(indexerBlock.getLabel());
+		Image img3 = indexerBlock.getImage();
+		if (img3 != null)
+			item3.setImage(img3);
+		item3.setData(indexerBlock);
+		item3.setControl(indexerBlock.getControl(folder));
+
 		WorkbenchHelp.setHelp(parent, ICHelpContextIds.PROJECT_PROPERTY_PAGE);	
 	}
 	
@@ -77,6 +88,9 @@
 		if (ok && settingsBlock != null) {
 			ok = settingsBlock.isValid();
 		}
+		if (ok && indexerBlock != null) {
+			ok = indexerBlock.isValid();
+		}
 		setValid(ok);
 	}
 
@@ -86,7 +100,9 @@
 	public boolean performOk() {
 		if (settingsBlock != null)
 			settingsBlock.doRun(getProject(), null);
-		
+		if (indexerBlock != null) {
+			indexerBlock.doRun(getProject(), null);
+		}
 		return true;
 	}
 		
@@ -105,6 +121,7 @@
 		super.setVisible(visible);
 		if (visible && folder != null) {
 			settingsBlock.setVisible(visible);
+			indexerBlock.setVisible(visible);
 			folder.setFocus();
 		}
 	}	
Index: src/org/eclipse/cdt/ui/wizards/IndexerBlock.java
===================================================================
RCS file: src/org/eclipse/cdt/ui/wizards/IndexerBlock.java
diff -N src/org/eclipse/cdt/ui/wizards/IndexerBlock.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/ui/wizards/IndexerBlock.java	20 Nov 2002 22:06:29 -0000
@@ -0,0 +1,90 @@
+package org.eclipse.cdt.ui.wizards;
+
+/*
+ * (c) Copyright IBM Corp. 2000, 2001.
+ * All Rights Reserved.
+ */
+
+import org.eclipse.cdt.core.CCorePlugin;
+import org.eclipse.cdt.core.index.IndexModel;
+import org.eclipse.cdt.utils.ui.swt.IValidation;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+
+public class IndexerBlock implements IWizardTab {
+	private Button indexerSwitch;
+	IProject project;
+	IValidation page;
+
+	public IndexerBlock(IValidation valid, IProject p) {
+		page = valid;
+		project = p;
+	}
+	
+	/**
+	 * @see org.eclipse.cdt.ui.wizards.IWizardTab#getControl(Composite)
+	 */
+	public Composite getControl(Composite parent) {
+		Composite composite= new Composite(parent, SWT.NONE);
+		GridLayout grid = new GridLayout();
+		grid.numColumns = 1;
+		composite.setLayout(grid);
+
+		IndexModel indexer = CCorePlugin.getDefault().getIndexModel();			
+
+		indexerSwitch = new Button(composite, SWT.CHECK | SWT.RIGHT);
+		indexerSwitch.setAlignment(SWT.LEFT);
+		indexerSwitch.setText("Enable indexing service for this project");
+		indexerSwitch.setSelection(indexer.isEnabled(project));
+		return composite;
+	}
+
+	/**
+	 * @see org.eclipse.cdt.ui.wizards.IWizardTab#doRun(IProject, IProgressMonitor)
+	 */
+	public void doRun(IProject project, IProgressMonitor monitor) {
+		IndexModel indexer = CCorePlugin.getDefault().getIndexModel();			
+		indexer.setEnabled(project, indexerSwitch.getSelection());
+	}
+
+
+	/**
+	 * @see org.eclipse.cdt.ui.wizards.IWizardTab#getImage()
+	 */
+	public Image getImage() {
+		return null;
+	}
+
+	/**
+	 * @see org.eclipse.cdt.ui.wizards.IWizardTab#getLabel()
+	 */
+	public String getLabel() {
+		return "Indexer";
+	}
+
+	/**
+	 * @see org.eclipse.cdt.ui.wizards.IWizardTab#isValid()
+	 */
+	public boolean isValid() {
+		return true;
+	}
+
+	/**
+	 * @see org.eclipse.cdt.ui.wizards.IWizardTab#setVisible(boolean)
+	 */
+	public void setVisible(boolean visible) {
+		IndexModel indexer = CCorePlugin.getDefault().getIndexModel();			
+
+		if (indexerSwitch != null) {
+			//indexerSwitch.setAlignment(SWT.LEFT);
+			//indexerSwitch.setText("Enable indexing service for this project");
+			indexerSwitch.setSelection(indexer.isEnabled(project));
+		}
+	}
+
+}



Back to the top