Hi,
Great to hear it's working at least ;-) I hope to find some time for cleaning the code and making it more platform-independent, but it's encouraging at least.
On 20 Dec 2007, at 11:06, Lukas Renggli wrote:
Then I set the workspace location and start Eclipse. It seems that this happens in the background, as I can't see anything starting (it just takes a while). Is that correct?
Yes. Eclipse is started 'headless' as a java application, running the Penumbra Eclipse plugin as the main application. When eclipse is started, the only thing you notice is that the button label changes to 'stop eclipse'. (However, restarting eclipse in the same image is still a problem, we will solve that later.).
The actual plugin instance (a Java object) is available from within Smalltalk as the singleton instance of the PenumbraApplication class. You can retrieve it by executing:
JavaWorldPrototypes.org.dmp.penumbra.PenumbraApplication current.
(for now, please forget and forgive that the class side is in another namespace than the actual object you obtain. this is another point on our todo list) You can inspect that object and take a look at the methods you can send it. For example, you can get the javaModel instance:
pluginObject getJavaModel
-or you can retrieve all CompilationUnit parsetrees from a project doing the following:
pluginObject getCompilationUnitsForProject_IJavaProject: (pluginObject getJavaModel getJavaProjects asOrderedCollection first)
There's more when using the TableGatheringVisitor that is also packaged in there. It can walk all parsetrees and gather enums, classes, interfaces and methods separately.
Now I notice that the Penumbra-Moose has troubles if Eclipse is already running. So I restart the image and try again without using the PenumbraConsole. I get a debugger as it tries to import an Enum, so I hack your code to only consider interfaces and classes.
The importer is indeed far from complete. We're mostly working on the ability for Soul to reason about eclipse trees.
---------------------------- Johan Brichau johan.brichau@uclouvain.be