This is one that I already had several times and could not find a proper answer:
How to have nodes grouped in containers (e.g. classes in packages) and links from one inner node (i.e. a class) to another one possibly from a different container (e.g. inheritance links from one package to another one) ?
nicolas
Hi Nicolas,
I'm still a Roassal newbie but there is an example that might be a good starting point:
exampleConditionalLayout
| b | b := RTMondrian new. b shape rectangle fillColor: Color white; borderColor: Color lightGray; withTextAbove: #name. b nodes: Collection withAllSubclasses forEach: [ :cls | b nodes: cls rtmethods. b edges connectToAll: #dependentMethods. b layout ifElement: #isConnected then: RTTreeLayout new; else: RTGridLayout new. ].
b edges connectFrom: #superclass. b layout tree. b build. ^ b view
On Tue, Apr 10, 2018 at 10:10 AM, Nicolas Anquetil < nicolas.anquetil@inria.fr> wrote:
This is one that I already had several times and could not find a proper answer:
How to have nodes grouped in containers (e.g. classes in packages) and links from one inner node (i.e. a class) to another one possibly from a different container (e.g. inheritance links from one package to another one) ?
nicolas
-- Nicolas Anquetil RMod team -- Inria Lille
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Easy:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= packages := #('Announcements-Tests-Core' 'Announcements-Core') collect: [ :pName | RPackageOrganizer default packageNamed: pName ].
b := RTMondrian new. b shape box withTextAbove: #packageName. b nodes: packages forEach: [ :pak | b nodes: pak classes. b edges connectToAll: #subclasses. b layout tree. ].
b shape line color: Color blue trans. b edges objects: (packages flatCollect: #definedClasses); connectToAll: #dependentClasses. b -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Cheers, Alexandre
On Apr 10, 2018, at 4:10 PM, Nicolas Anquetil nicolas.anquetil@inria.fr wrote:
This is one that I already had several times and could not find a proper answer:
How to have nodes grouped in containers (e.g. classes in packages) and links from one inner node (i.e. a class) to another one possibly from a different container (e.g. inheritance links from one package to another one) ?
nicolas
-- Nicolas Anquetil RMod team -- Inria Lille
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
great !
thanks
nicolas
On 10/04/2018 17:16, Alexandre Bergel wrote:
Easy:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= packages := #('Announcements-Tests-Core' 'Announcements-Core') collect: [ :pName | RPackageOrganizer default packageNamed: pName ].
b := RTMondrian new. b shape box withTextAbove: #packageName. b nodes: packages forEach: [ :pak | b nodes: pak classes. b edges connectToAll: #subclasses. b layout tree. ].
b shape line color: Color blue trans. b edges objects: (packages flatCollect: #definedClasses); connectToAll: #dependentClasses. b -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Cheers, Alexandre
On Apr 10, 2018, at 4:10 PM, Nicolas Anquetil <nicolas.anquetil@inria.fr mailto:nicolas.anquetil@inria.fr> wrote:
This is one that I already had several times and could not find a proper answer:
How to have nodes grouped in containers (e.g. classes in packages) and links from one inner node (i.e. a class) to another one possibly from a different container (e.g. inheritance links from one package to another one) ?
nicolas
-- Nicolas Anquetil RMod team -- Inria Lille
Moose-dev mailing list Moose-dev@list.inf.unibe.ch mailto:Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev