[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-patch] new CDT UI proptery page for indexer
|
Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/ChangeLog,v
retrieving revision 1.17
diff -u -r1.17 ChangeLog
--- ChangeLog 8 Nov 2002 03:24:17 -0000 1.17
+++ ChangeLog 13 Nov 2002 13:17:42 -0000
@@ -1,3 +1,11 @@
+2002-11-13 David Inglis
+
+ * plugin.properties
+ * plugin.xml
+ * src/.../internal/ui/preferences/CIndexerPropertyPage.java
+ Added new property page on c project to enable/disable the indexing service.
+
+
2002-11-06 Alain Magloire
Fix for Bugzilla 25869.
Index: plugin.properties
===================================================================
RCS file: /home/tools/org.eclipse.cdt.ui/plugin.properties,v
retrieving revision 1.10
diff -u -r1.10 plugin.properties
--- plugin.properties 28 Oct 2002 19:26:46 -0000 1.10
+++ plugin.properties 13 Nov 2002 13:17:42 -0000
@@ -55,6 +55,7 @@
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.11
diff -u -r1.11 plugin.xml
--- plugin.xml 29 Oct 2002 21:40:59 -0000 1.11
+++ plugin.xml 13 Nov 2002 13:17:43 -0000
@@ -266,8 +266,20 @@
<page
objectClass="org.eclipse.core.resources.IProject"
name="%CProjectPropertyPage.name"
+ adaptable="true"
class="org.eclipse.cdt.internal.ui.preferences.CProjectPropertyPage"
id="org.eclipse.cdt.ui.preferences.CProjectPropertyPage">
+ <filter
+ name="nature"
+ 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">
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
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/internal/ui/preferences/CIndexerPropertyPage.java 13 Nov 2002 13:17:43 -0000
@@ -0,0 +1,62 @@
+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();
+ }
+
+}