1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00
Commit graph

31 commits

Author SHA1 Message Date
Doug Schaefer
b88ebd27db [Bug 105915] Fix for Code Formatter schema to show real name. 2005-08-08 18:08:35 +00:00
Alain Magloire
f441ff3778 2005-06-08 Alain Magloire
Move to the IContentTypeManager framework: PR 86645
	* index/org/eclipse/cdt/internal/core/index/sourceindexer/AbstractIndexer.java
	* index/org/eclipse/cdt/internal/core/index/sourceindexer/AddFileToIndex.java
	* index/org/eclipse/cdt/internal/core/index/sourceindexer/AddFolderToIndex.java
	* index/org/eclipse/cdt/internal/core/index/sourceindexer/SourceIndexerRequestor.java

	* model/org/eclipse/cdt/core/model/CoreModel.java
	* model/org/eclipse/cdt/core/model/ITranslationUnit.java

	* model/org/eclipse/cdt/internal/core/model/CContainer.java
	* model/org/eclipse/cdt/internal/core/model/CModelManager.java
	+ model/org/eclipse/cdt/internal/core/model/ContentTypeProcessor.java
	* model/org/eclipse/cdt/internal/core/model/CreateWorkingCopyOperation.java
	* model/org/eclipse/cdt/internal/core/model/DeltaProcessor.java
	* model/org/eclipse/cdt/internal/core/model/ExternalTranslationUnit.java
	* model/org/eclipse/cdt/internal/core/model/IncludeReference.java
	* model/org/eclipse/cdt/internal/core/model/PathEntryManager.java
	- model/org/eclipse/cdt/internal/core/model/ResolverProcessor.java
	* model/org/eclipse/cdt/internal/core/model/TranslationUnit.java
	* model/org/eclipse/cdt/internal/core/model/WorkingCopy.java

	* plugin.xml
	- schema/CFileType.exsd
	- schema//CFileTypeAssociation.exsd
	- template/cpp_headers

	* search/org/eclipse/cdt/core/search
	* src/org/eclipse/cdt/core/CCorePlugin.java

	- src/org/eclipse/cdt/core/filetype/*
	- src/org/eclipse/cdt/core/internal/filetype/*
2005-06-09 16:06:09 +00:00
Doug Schaefer
ec85b24cb7 Patch for Bog. Update the Index Manager to use the CDescriptor framework to manage which indexer to instantiate for each project. 2005-03-21 15:44:42 +00:00
Bogdan Gheorghe
8cb9d02dae New core framework for indexer
New UI framework for indexer
Updates to core tests/ui tests
2005-03-14 05:32:07 +00:00
Alain Magloire
08d72e6639 2004-09-07 Alain Magloire
Part of the uncoming work to supply formatting in CDT
	* schema/CodeFormatter.exsd
	* src/org/eclipse/cdt/core/CodePreferenceConstants.java
	* src/org/eclipse/cdt/core/ToolFactory.java
	* src/org/eclipse/cdt/core/formatter/CodeFormatter.java
	* src/org/eclipse/cdt/core/formatter/CodeFormatterConstants.java
	* src/org/eclipse/cdt/internal/core/CCorePreferenceInitializer.java
	* plugin.properties
	* plugin.xml
2004-09-07 20:23:30 +00:00
David Inglis
167dd473b8 small schema update 2004-06-22 14:51:52 +00:00
David Inglis
6f4cf3159b minor fix to doc tag 2004-04-20 16:14:32 +00:00
David Inglis
6f06f88155 fixed dead lock
missing extension point
fix CCorePlugin.log
2004-04-19 15:51:31 +00:00
Alain Magloire
0d674490cf Patch from Sam Robb to cover PR 52864 2004-04-16 19:08:23 +00:00
Alain Magloire
b937c683b4 First effort in providing the infrastructure
for recognizing TranslationUnit base on name.
2004-04-06 23:41:08 +00:00
David Inglis
7f918c42c3 added CBuildConsole schema 2004-03-25 19:43:27 +00:00
David Inglis
5dbac920c0 added natureID to Cproject schema to help recover missing .cdtproject files 2004-03-25 19:43:00 +00:00
David Inglis
fd4c0586df update processList schema to require a platform 2004-03-25 19:42:29 +00:00
Doug Schaefer
03576ad8a7 Patch for Sean Evoy:
- Since I forgot to do this last release, I am removing the
original managed build model schema and extension
points from the cdt core and ui projects.
2003-09-22 02:38:47 +00:00
Doug Schaefer
d18851f2d7 Patch for Sean Evoy:
- Move the managed builder to it's own plugins and feature.
2003-09-15 20:44:43 +00:00
David Inglis
b871d57ad8 added scheme for CProject extension 2003-09-08 14:03:15 +00:00
Doug Schaefer
cc710063b4 Patch for Sean Evoy:
This patch contains some minor UI changes and a big chunk of work to add 
built-in symbols and includes search paths to a tool specification. 

The UI change is a switch from dynamically resizing the property page when 
an option category is selected from the list, but rather using a scrolled 
edit area. Now, if the option set is larger than the viewable area, a 
horizontal and/or vertical scrollbar is displayed.

In terms of built-ins, there is no UI support to change the values just 
yet. That is coming, but I wanted to get the framework and some 
definitions in place so that the indexer and scanner can start using them.
2003-08-20 17:52:32 +00:00
John Camelon
df11a294b8 Patch for Sean Evoy
In order to work through CExtensionPoint mechanism, I have to change the 
existing extension point entries for the Managed and Standard builders to 
the following (all future builders will have to conform to this as well):
   <extension
         id="ManagedBuildManager"
         point="org.eclipse.cdt.core.ScannerInfoProvider">
      <cextension>
         <run
 class="org.eclipse.cdt.core.build.managed.ManagedBuildManager">
         </run>
      </cextension>
   </extension>

   <extension
         id="StandardBuildManager"
         point="org.eclipse.cdt.core.ScannerInfoProvider">
      <cextension>
         <run
 class="org.eclipse.cdt.core.build.standard.StandardBuildManager">
         </run>
      </cextension>
   </extension>

As well, the ManagedBuildManager and StandardBuildManager must extend 
AbstractCExtension.

The new project wizards for managed and standard projects have to be 
modified to register the right class as the scanner info providers for the 
project. The example below shows the managed project wizard code, but the 
standard project wizard is similar.
try {
        ICDescriptor desc = 
CCorePlugin.getDefault().getCProjectDescription(project);
        desc.remove(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID);
        desc.create(CCorePlugin.BUILD_SCANNER_INFO_UNIQ_ID, 
ManagedBuildManager.INTERFACE_IDENTITY);
} <snip>


Clients use a new method defined in CCorePlugin 

public IScannerInfoProvider getScannerInfoProvider(IProject project) {
        IScannerInfoProvider provider = null;
        if (project != null) {
                try {
                        ICDescriptor desc = (ICDescriptor) 
getCProjectDescription(project);
                        ICExtensionReference[] extensions = 
desc.get(BUILD_SCANNER_INFO_UNIQ_ID);
                        if (extensions.length > 0)
                                provider = (IScannerInfoProvider) 
extensions[0].createExtension();
                } catch (CoreException e) {
                }
        }
        return provider;
}

to get the information provider as shown in the updated JUnit test code 
below:
// Find the first IScannerInfoProvider that supplies build info for the 
project
IScannerInfoProvider provider = 
CCorePlugin.getDefault().getScannerInfoProvider(project);
assertNotNull(provider);

As is the case now, clients implement the IScannerInfoChangeListener 
interface and pass themselves to the provider in a subscription message. 
There is also a new method on the IScannerInfoProvider interface that 
allows the client to get information immediately as shown below:
IScannerInfo currentSettings = provider.getScannerInformation(project); 

The ManagedBuildManager::getScannerInfo(IResource) method will be 
deprecated, then removed before the end of this release cycle.
2003-08-13 17:45:38 +00:00
John Camelon
8513838955 Patch for Sean Evoy
I am in the process of documenting the build model and as I go along, a 
number of things will have to be cleaned up in the actual model itself. 
This patch is purely a bookeeping change to make it easier for me to 
maintain the build model in the face of these changes as we go forward. 
Where I used to access XML elements using hard-coded strings, I have moved 
the string into the appropriate interface class. If the name of the 
attribute changes in the future, I only have to update it one place.

I have also begun the process of renaming certain attributes of the schema 
to make them better reflect what they are doing. My hope is that if they 
have intuitive names, toolchain implementers will have less difficulty 
understanding their intent. In any case, I have changed four attribute 
names; optionRef -> optionReference, toolRef -> toolReference, optionValue 
-> listOptionValue, and  optionEnum -> enumeratedOptionValue. 

Unfortunately, these changes will invalidate the dot-cdtbuild files for 
any managed build projects in your workspace. If you can't bear to create 
a new project, move the files over, and set-up the compiler options again, 
you can always hand-edit the changes in the file yourself. Just remember 
to restart CDT after you do so.
2003-07-31 13:20:37 +00:00
John Camelon
ae3a1417f5 Patch for Sean Evoy
In order to meet certain internal guidelines and to test the makefile 
generator, the build model replied to some answers with hard-coded 
information. This patch moves the information into the build model. Tests 
have been updated to reflect these changes, and the patch has been 
smoke-tested on Unix.
2003-07-29 14:28:40 +00:00
Doug Schaefer
3a2ed3957a Patch for Sean Evoy:
- I added the ability to build when there are inter-project dependencies 
(first iteration; I would like to try another way). There is also some 
changes to how libraries are handled. Change logs describe the changes and 
the AllBuildTests has been updated to reflect these changes.
2003-07-25 17:31:01 +00:00
John Camelon
8b844d54f1 Patch for Sean Evoy.
The change logs contain an overview of what has been done to implement a new interface between a build model (any build model) 
and clients of the model that need to extract include search paths and defined symbols. For the most part, I have tried to leave the 
old build system as unchanged as possible. For example, project properties like the make search path, and whether or not to continue 
on build failures are still stored as persistent properties on the project through the CNature (ugh). The new information I have added 
is managed by a new build manager on a per-project basis and is associated with a project as a session property. The information is 
persisted in the 'cdtbuild' file introduced by the new managed build system.
2003-07-04 18:36:47 +00:00
Doug Schaefer
b8059d7f27 Patch for Sean Evoy:
1. Fix for bug 38665 - Need to select platform before configurations become visible 
2. Icon files that were not delivered in my last patch 
3. A new interface for clients of the build model to extract include paths and defined symbols for managed projects. Unmanaged projects to follow soon.
2003-06-23 14:36:31 +00:00
Doug Schaefer
da0c569bff Patch for Sean Evoy:
- Initial contribution of Managed Build UI.
2003-06-09 19:22:21 +00:00
Doug Schaefer
7b1c64d5fe Patch for Sean Evoy:
Core 
1.	Added 2 new option types: Boolean and enumerated 
2.	Changed the IOption interface to get new option type values 
3.	In plugin manifest and IOption interface added concept of a default enumerated value to support on-going GUI work 
4.	In plugin manifest and IOption, added field to map the actual command line argument with the option for makefile generation.

Tests 
1.	Changed the plugin.xml manifest to match the new option types 
2.	AllBuildTests.java updated to test new option types and fields added in core
2003-05-21 16:30:00 +00:00
Doug Schaefer
b8024352d1 New Build Model
- Save and load options values
2003-04-25 14:32:51 +00:00
Doug Schaefer
663cef492f Fleshing out the build model. 2003-04-09 20:56:21 +00:00
Doug Schaefer
e7a699b56c Updates to the new build model. 2003-04-07 20:56:27 +00:00
Doug Schaefer
ec7c947a6f Yet Another Build Model.
- Defines most of the interfaces
- Some simple implementation behind the interfaces to at
least get information from the extension point.
2003-04-07 02:47:01 +00:00
Doug Schaefer
18177e7a35 New build model from Sam Robb. 2003-02-17 19:13:07 +00:00
David Inglis
60f24d786e new Processlist extension point 2002-09-17 19:08:38 +00:00