Hi Tom,
It didn't require changing the Java source files but is not a plugin
either. I've modified the argouml.ini to add another details tab through
which I've then able to access the RootPane and then used something as
ugly as
BorderSplitPane root = (BorderSplitPane) getComponent(getRootPane(),new
int[]{1,0,0,4},0);
root.add(titlePanel, BorderLayout.EAST);
to add the "Wizards" panel on the right side
I've also had to use reflection to access the UmlPackage implementation:
protected UmlPackage getInternalUmlPackage() throws Exception {
Facade facade = Model.getFacade();
Field[] fields = facade.getClass().getDeclaredFields();
Field implField = null;
for (int i=0;i<fields.length;i++){
if(fields[i].getName().equals("implementation")){
implField = fields[i];
break;
}
}
AccessibleObject.setAccessible(new
AccessibleObject[]{implField}, true);
ModelImplementation implementation = (ModelImplementation)
implField.get(facade);
fields = implementation.getClass().getDeclaredFields();
Field implUmlPackage = null;
for (int i=0;i<fields.length;i++){
if(fields[i].getName().equals("umlPackage")){
implUmlPackage = fields[i];
break;
}
}
AccessibleObject.setAccessible(new
AccessibleObject[]{implUmlPackage}, true);
return (UmlPackage) implUmlPackage.get(implementation);
}
Finally, I had to modify the meta-inf/manifest.mf in argouml-mdr.jar to
prepend argoumlepsilon.jar (the implementation of EWL and the
integration classes) and antlr-2.7.5.jar (as ArgoUML ships with an older
version of Antlr than the one I need for EWL)
Is there a way to accomplish the above and deliver this extension as a
proper plugin?
Cheers,
Dimitrios
Tom Morris wrote:
On Tue, May 13, 2008 at 2:18 PM, Dimitrios Kolovos <[EMAIL PROTECTED]> wrote:
We have made available an extended version of ArgoUML (based on v0.20)
which provides support for programmatic manipulation of "live" ArgoUML
models using a dedicated OCL-based executable language (EWL). A Flash
screencast is available at www.kolovos.eu/epsilon/argouml/screencast.php.
Instructions on obtaining this extended version and learning more about EWL
are available at www.kolovos.eu/epsilon/argouml/. For now, only a binary
version has been released - however if this is of interest to the community,
we are happy to release the source code as well.
Cool. Is this packaged as a plugin that is usable with other versions
of ArgoUML or have you modified the core sources?
If you were forced to modify the core, it would be useful to know what
extension points were missing (presuming you haven't already requested
them as enhancements in the issue database).
Tom
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]