Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- | protocolFilter builder classes superclasses |
- protocolFilter := [ :method | (method category beginsWith: 'private')
- or: [(#('initialization' 'installing') includes: method category)
- or: [method isExtension ] ] ].
- classes := OrderedCollection new
- add: ActionTrigger;
- addAll: TriggeringCondition allSubclasses;
- addAll: TriggeringPolicy allSubclasses;
- yourself.
- superclasses := OrderedCollection new
- add: TriggeringCondition;
- add: TriggeringPolicy;
- yourself.
- builder := RTUMLClassBuilder new.
- "Set line shape"
- builder lineShape arrowedLine;
- color: Color black.
- builder boxShape borderColor: Color black.
- builder methodShape color: Color black.
- builder methodsNames: [ :class | (superclasses includes: class)
- ifTrue: #() ifFalse: ((class methods reject: protocolFilter) sortedAs: #protocol) ].
- builder instanceVariables: [ :class | (superclasses includes: class)
- ifTrue: #() ifFalse: (class instanceVariables)].
- builder classNameShape: (RTStyledLabel new
- emphasis: [:class | (superclasses includes: class)
- ifTrue: [ TextEmphasis italic ]
- ifFalse: [ TextEmphasis normal ] ] ;
- color: Color black;
- yourself).
- builder addObjects: classes , superclasses;
- treeLayout.
- builder view canvas color: (Color transparent).
- builder
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement