Hello Linus! Thanks for answering my question!
How much time, do you estimate, would it take to add the possibilities to - add a tab to the Details Pane and / or - add a new Diagram Type As the timeframe for my semester-project is quite narrow, I'm also considering some alternatives integrating the desired functionality. One Idea I'm currently exploring, is to just add the component with this SecureUML-GUI to the Property-Pane (instead of having it on a seperate Tab) like this: - develop classes which inherit from 'PropPanelClass'/'PropPanelMethod' - register these Property-Panels for the corresponding Type using - listen/react to 'TargetManager' Events I've already done a little test to see if/how it works, and it seems to: - at least for 'PropPanelUMLClassDiagram'/'UMLClassDiagram', I can add my own GUI-Components to the PropPane leaving the existing Components/Functionality unaffected. (...ProjectBrowser.getInstance().getTabProps().addPanel(UMLClassDiagram.class, mypanel)) But still, there are some Problems I couldn't find the Solution for: - (how) can I do the same for Classes/Methods ? (When I inspect the type of the "Target" when a Class/Method is selected, I get "org.omg.uml.foundation.core.Class$Impl" / "..Operation$Impl", but I don't find the corresponding) classes.) - Are there some problems with this approach, that I'm not aware of ? Regards - Marcel Beer -----Original Message----- From: Linus Tolke [mailto:[EMAIL PROTECTED] Sent: Sat 4/29/2006 3:31 PM To: [email protected] Subject: RE: [argouml-dev] Adding a Details-Tab / a Diagram Type Hello Marcel! It is great that you are exploring this. You have correctly noticed that, by design, adding a tab to the Details Pane or a new Diagram Type is not done through the new module loader. Instead it is done in the subsystem providing these possibilities. I will try to add these possibilities as you go along but I am very slow so please help me as much as possible with this. /Linus > -----Original Message----- > From: Beer Marcel [mailto:[EMAIL PROTECTED] > Sent: den 29 april 2006 14:36 > To: [email protected] > Subject: [argouml-dev] Adding a Details-Tab / a Diagram Type > > Hello all! > > As a Semester Project at ETH Zurich, Switzerland, I'm developing an > extension for ArgoUML (as a module). > The goal is, to provide a simple GUI for specifying Role Based Access > Control Policies for the Classes/Methods of any UML model like this > (simplified): > > +---------------+-------+-------+-------+ > | Resources | User | Admin | Guest | > +---------------+-------+-------+-------+ > | MyClass | | | | > | full access | | X | | > | create | X | X | | > | read | X | X | X | > | update | | X | | > | | | | | > | foo(...) | | | | > | execute | X | X | | > | .. | | | | > +---------------+-------+-------+-------+ > > (This is just a view, the access-control entities (users, roles, > permissions) are expressed/stored in UML using SecureUML.) > (if interested in the subject, have a look at the paper: > http://citeseer.ist.psu.edu/lodderstedt02secureuml.html) > > > I consider mainly two options how to integrate the functionality: add a > tab to the Details Pane or add a new Diagram Type. > > I want to implement this extension as a MODULE, using the NEW Moduleloader. > I've read the cookbook and browsed the API, but so far I didn't find out > how to: > - add a tab to the Details pane > - add a new Diagram Type > > With the OLD Module-Loader I think > 'PluggablePropertyPanel'/'PluggableDiagram' could be used, but which > classes/methods of the API do I need when using the NEW Module-Loader? > > (From the cookbook I've learned that that's possible to add a Tab to the > Details Pane by adding a line to 'argo.ini'. > But is there also a possibility to add a Tab via the ArgoUML API when the > module is loaded?) > > > Thanks in advance for answering my questions! > > Regards > > - Marcel Beer > > > --------------------------------------------------------------------- > 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
