[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
RE: [cdt-dev] Early build config creation
|
Title: Message
I
assume you mean you are trying to add additional configurations programatically
as if they had been loaded from plugin.xml. This is originally what we
wanted to do also. In fact, I contributed "IManagedConfigElementProvider"
specifically for that purpose. Unfortunately it only really worked
correctly when it was first checked in due to subsequent changes in the
model/implementation. I'm not sure of the current state of that class, as
I haven't checked on it for a while. Due to the breakage in this and a
number of other design considerations, we abandoned the idea of programmatically
augmenting the managed build model that is read in from the extension
point. However, it may work for what you are
describing.
To
answer your original question, I don't think there is any reliable way in
general to insert your code before the projects are loaded. However, as a
hack I think you could define an "IManagedConfigElementProvider", it will be
instantiated and called during "ManagedBuildManager.loadExtensions", but necessarily at the
end. If you define it at the end of your extension, you can ensure that at
least your definitions will have been loaded before it is called. You
cannot however, guarantee whether it is called before or after definitions have
been loaded from other plugins (including the definitions that come with CDT
itself). Hope that helps,
Jeremiah Lott
TimeSys Corporation
When it starts
up one of our plugins creates some additional managed builder Configurations.
However when the C++ Projects view restores its state on startup this can
cause the projects to be loaded and those projects can’t find their correct
configuration because it hasn’t been created yet.
Any thoughts on how
to get our plugin’s Configuration creating code to run before
ManagedBuildManager loads project info? It looks like it would be nice if
there was a way to extend ManagedBuildManager.loadExtensions.
Thanks –
Ken