diff --git a/src/MooseIDE-ButterflyMap/MiButterflyMapBrowser.class.st b/src/MooseIDE-ButterflyMap/MiButterflyMapBrowser.class.st index b0396273a..baa1f5a03 100644 --- a/src/MooseIDE-ButterflyMap/MiButterflyMapBrowser.class.st +++ b/src/MooseIDE-ButterflyMap/MiButterflyMapBrowser.class.st @@ -25,10 +25,7 @@ Controls: " Class { #name : #MiButterflyMapBrowser, - #superclass : #MiAbstractBrowser, - #instVars : [ - 'visualization' - ], + #superclass : #MiAbstractVisualizationBrowser, #category : #'MooseIDE-ButterflyMap-Browser' } @@ -125,12 +122,6 @@ MiButterflyMapBrowser >> itemsFor: aClass [ ^ self application itemsFor: aClass ] -{ #category : #accessing } -MiButterflyMapBrowser >> miSelectedItem [ - - ^ specModel currentEntity -] - { #category : #running } MiButterflyMapBrowser >> run [ diff --git a/src/MooseIDE-ButterflyMap/MiButterflyMapVisualization.class.st b/src/MooseIDE-ButterflyMap/MiButterflyMapVisualization.class.st index 7323935a1..7198bbdee 100644 --- a/src/MooseIDE-ButterflyMap/MiButterflyMapVisualization.class.st +++ b/src/MooseIDE-ButterflyMap/MiButterflyMapVisualization.class.st @@ -3,24 +3,10 @@ Butterfly visualization. " Class { #name : #MiButterflyMapVisualization, - #superclass : #MiAbstractVisualization, - #instVars : [ - 'builder' - ], + #superclass : #MiAbstractHierarchicalVisualization, #category : #'MooseIDE-ButterflyMap-Browser' } -{ #category : #running } -MiButterflyMapVisualization >> builder [ - - ^ builder -] - -{ #category : #highlighting } -MiButterflyMapVisualization >> highlightShapes [ - -] - { #category : #running } MiButterflyMapVisualization >> model [ diff --git a/src/MooseIDE-CoUsageMap/MiCoUsageMapBrowser.class.st b/src/MooseIDE-CoUsageMap/MiCoUsageMapBrowser.class.st index 97d7b7570..398c69373 100644 --- a/src/MooseIDE-CoUsageMap/MiCoUsageMapBrowser.class.st +++ b/src/MooseIDE-CoUsageMap/MiCoUsageMapBrowser.class.st @@ -25,10 +25,7 @@ Controls: " Class { #name : #MiCoUsageMapBrowser, - #superclass : #MiAbstractBrowser, - #instVars : [ - 'mapVisualization' - ], + #superclass : #MiAbstractVisualizationBrowser, #category : #'MooseIDE-CoUsageMap-Browser' } @@ -36,7 +33,7 @@ Class { MiCoUsageMapBrowser class >> defaultLayout [ ^ SpBoxLayout newLeftToRight - add: #mapVisualization + add: #visualization yourself ] @@ -86,8 +83,8 @@ MiCoUsageMapBrowser class >> windowSize [ { #category : #'window control' } MiCoUsageMapBrowser >> browserClosed [ super browserClosed. - application unregisterConsumer: mapVisualization. - application unregisterProducer: mapVisualization. + application unregisterConsumer: visualization. + application unregisterProducer: visualization. "settings mapVisualization: nil. mapVisualization settings: nil." @@ -112,11 +109,6 @@ MiCoUsageMapBrowser >> connectPresenters [ mapVisualization settings: settings." ] -{ #category : #accessing } -MiCoUsageMapBrowser >> defaultSettings [ - ^ MiCoUsageMapInstanceSettingsPresenter new -] - { #category : #actions } MiCoUsageMapBrowser >> followEntity: anEntity [ self model followEntity: anEntity @@ -129,26 +121,21 @@ MiCoUsageMapBrowser >> hasSettings [ { #category : #initialization } MiCoUsageMapBrowser >> initializePresenters [ - mapVisualization := self instantiate: MiCoUsageMapVisualization. - mapVisualization specModel: specModel. + visualization := self instantiate: MiCoUsageMapVisualization. + visualization specModel: specModel. "self flag: 'this should be in MiCoUsageMapModel'. settings := self instantiate: MiCoUsageMapInstanceSettingsPresenter." self flag: 'this should be in MiCoUsageMapVisualization'. - application registerConsumer: mapVisualization for: FamixTag. - application registerConsumer: mapVisualization for: FamixTagAssociation. - application registerProducer: mapVisualization for: FamixTagAssociation. + application registerConsumer: visualization for: FamixTag. + application registerConsumer: visualization for: FamixTagAssociation. + application registerProducer: visualization for: FamixTagAssociation. ] { #category : #accessing } MiCoUsageMapBrowser >> mapVisualization [ - ^ mapVisualization -] - -{ #category : #accessing } -MiCoUsageMapBrowser >> miSelectedItem [ - ^ specModel miSelectedItem + ^ visualization ] { #category : #dependencies } @@ -163,11 +150,11 @@ MiCoUsageMapBrowser >> settings [ { #category : #updating } MiCoUsageMapBrowser >> update [ - mapVisualization run + visualization run ] { #category : #public } MiCoUsageMapBrowser >> updateBoxColor: aMiCoBox fromTags: tags [ - mapVisualization updateBoxColor: aMiCoBox fromTags: tags + visualization updateBoxColor: aMiCoBox fromTags: tags ] diff --git a/src/MooseIDE-CoUsageMap/MiCoUsageMapVisualization.class.st b/src/MooseIDE-CoUsageMap/MiCoUsageMapVisualization.class.st index a79dabecb..5519c67d5 100644 --- a/src/MooseIDE-CoUsageMap/MiCoUsageMapVisualization.class.st +++ b/src/MooseIDE-CoUsageMap/MiCoUsageMapVisualization.class.st @@ -36,15 +36,9 @@ MiCoUsageMapVisualization >> consumeTagAssociation: aFamixTagAssociation [ mapBuilder updateShapeColors ] -{ #category : #highlighting } -MiCoUsageMapVisualization >> highlightShapes [ - ^ #() -] - { #category : #initialization } MiCoUsageMapVisualization >> initialize [ super initialize. - self script: [ :canvas | canvas ]. mapBuilder := MiCoUsageMapBuilder new. mapBuilder visualization: self. @@ -65,6 +59,15 @@ MiCoUsageMapVisualization >> mapBuilder [ ^mapBuilder ] +{ #category : #'as yet unclassified' } +MiCoUsageMapVisualization >> modelForShape: aShape [ + + | containerBox | + containerBox := aShape model. + + ^ containerBox mooseEntity +] + { #category : #actions } MiCoUsageMapVisualization >> openSettings [ "called from the visualization's globalMenu" diff --git a/src/MooseIDE-Core/MiAbstractBrowser.class.st b/src/MooseIDE-Core/MiAbstractBrowser.class.st index 8eb7823ba..b30e92ee6 100644 --- a/src/MooseIDE-Core/MiAbstractBrowser.class.st +++ b/src/MooseIDE-Core/MiAbstractBrowser.class.st @@ -344,7 +344,7 @@ MiAbstractBrowser >> canFollowEntity: anObject [ self subclassResponsibility ] -{ #category : #testing } +{ #category : #highlighting } MiAbstractBrowser >> canHighlight [ "Override to retrun true if you want to give your browser a highlight behavior. @@ -415,7 +415,7 @@ MiAbstractBrowser >> hasSettings [ ^false ] -{ #category : #actions } +{ #category : #highlighting } MiAbstractBrowser >> highlightEntity: anEntity [ "Override to add behavior on highlight. diff --git a/src/MooseIDE-Core/MiAbstractVisualizationBrowser.class.st b/src/MooseIDE-Core/MiAbstractVisualizationBrowser.class.st new file mode 100644 index 000000000..cd584917b --- /dev/null +++ b/src/MooseIDE-Core/MiAbstractVisualizationBrowser.class.st @@ -0,0 +1,28 @@ +Class { + #name : #MiAbstractVisualizationBrowser, + #superclass : #MiAbstractBrowser, + #instVars : [ + 'visualization' + ], + #category : #'MooseIDE-Core-Browser' +} + +{ #category : #actions } +MiAbstractVisualizationBrowser >> canHighlight [ + + ^ true +] + +{ #category : #highlighting } +MiAbstractVisualizationBrowser >> highlightEntity: entities [ + + visualization highlightEntities: entities +] + +{ #category : #accessing } +MiAbstractVisualizationBrowser >> miSelectedItem [ + + ^ visualization miSelectedItem ifEmpty: [ + specModel ifNil: [ ^ #( ) ]. + specModel entities mooseInterestingEntity ] +] diff --git a/src/MooseIDE-Dependency/MiArchitecturalMapBrowser.class.st b/src/MooseIDE-Dependency/MiArchitecturalMapBrowser.class.st index 190d1a88f..83f54bccf 100644 --- a/src/MooseIDE-Dependency/MiArchitecturalMapBrowser.class.st +++ b/src/MooseIDE-Dependency/MiArchitecturalMapBrowser.class.st @@ -22,10 +22,7 @@ Controls: " Class { #name : #MiArchitecturalMapBrowser, - #superclass : #MiAbstractBrowser, - #instVars : [ - 'visualization' - ], + #superclass : #MiAbstractVisualizationBrowser, #category : #'MooseIDE-Dependency-ArchitecturalMap' } @@ -154,16 +151,6 @@ MiArchitecturalMapBrowser >> initializePresenters [ self initializeLayout ] -{ #category : #accessing } -MiArchitecturalMapBrowser >> miSelectedItem [ - - ^visualization canvas selectedShapes - ifEmpty: [ specModel entities mooseInterestingEntity ] - ifNotEmpty: [ :selectedShapes | - (selectedShapes collect: [:shape | shape model rawModel]) - asMooseGroup ] -] - { #category : #actions } MiArchitecturalMapBrowser >> runVisualization [ diff --git a/src/MooseIDE-Dependency/MiArchitecturalMapVisualization.class.st b/src/MooseIDE-Dependency/MiArchitecturalMapVisualization.class.st index 9f536a9c3..123d78c52 100644 --- a/src/MooseIDE-Dependency/MiArchitecturalMapVisualization.class.st +++ b/src/MooseIDE-Dependency/MiArchitecturalMapVisualization.class.st @@ -6,25 +6,10 @@ Handle interactions. " Class { #name : #MiArchitecturalMapVisualization, - #superclass : #MiAbstractVisualization, - #instVars : [ - 'builder' - ], + #superclass : #MiAbstractHierarchicalVisualization, #category : #'MooseIDE-Dependency-ArchitecturalMap' } -{ #category : #accessing } -MiArchitecturalMapVisualization >> builder [ - - ^ builder -] - -{ #category : #highlighting } -MiArchitecturalMapVisualization >> highlightShapes [ - - -] - { #category : #running } MiArchitecturalMapVisualization >> run [ diff --git a/src/MooseIDE-Dependency/MiDMBrowser.class.st b/src/MooseIDE-Dependency/MiDMBrowser.class.st index 3642cfdd9..ddeeeefa8 100644 --- a/src/MooseIDE-Dependency/MiDMBrowser.class.st +++ b/src/MooseIDE-Dependency/MiDMBrowser.class.st @@ -22,10 +22,7 @@ Controls: " Class { #name : #MiDMBrowser, - #superclass : #MiAbstractBrowser, - #instVars : [ - 'visualization' - ], + #superclass : #MiAbstractVisualizationBrowser, #category : #'MooseIDE-Dependency-DistributionMap' } @@ -146,12 +143,6 @@ MiDMBrowser >> initializePresenters [ self initializeLayout ] -{ #category : #accessing } -MiDMBrowser >> miSelectedItem [ - - ^ specModel entities mooseInterestingEntity -] - { #category : #actions } MiDMBrowser >> runVisualization [ diff --git a/src/MooseIDE-Dependency/MiDMVisualization.class.st b/src/MooseIDE-Dependency/MiDMVisualization.class.st index 32e9d054c..3ebad3061 100644 --- a/src/MooseIDE-Dependency/MiDMVisualization.class.st +++ b/src/MooseIDE-Dependency/MiDMVisualization.class.st @@ -5,18 +5,10 @@ I am a visualization, using a builder to draw a distribution map [1] on my canva " Class { #name : #MiDMVisualization, - #superclass : #MiAbstractVisualization, - #instVars : [ - 'builder' - ], + #superclass : #MiAbstractHierarchicalVisualization, #category : #'MooseIDE-Dependency-DistributionMap' } -{ #category : #highlighting } -MiDMVisualization >> highlightShapes [ - -] - { #category : #running } MiDMVisualization >> run [ diff --git a/src/MooseIDE-Dependency/MiDependencyBrowser.class.st b/src/MooseIDE-Dependency/MiDependencyBrowser.class.st index e3802b7de..a049b6eee 100644 --- a/src/MooseIDE-Dependency/MiDependencyBrowser.class.st +++ b/src/MooseIDE-Dependency/MiDependencyBrowser.class.st @@ -25,9 +25,9 @@ Controls: " Class { #name : #MiDependencyBrowser, - #superclass : #MiAbstractDependencyBrowser, + #superclass : #MiAbstractVisualizationBrowser, #instVars : [ - 'diagram' + 'entities' ], #category : #'MooseIDE-Dependency-Dependency' } @@ -35,7 +35,7 @@ Class { { #category : #layout } MiDependencyBrowser class >> defaultLayout [ ^ super defaultLayout - add: #diagram; + add: #visualization; yourself ] @@ -61,7 +61,7 @@ MiDependencyBrowser class >> menuItem [ { #category : #'world menu' } MiDependencyBrowser class >> menuParent [ - ^ self dependencyMenuRoot + ^ #MooseIDEDependencyBrowsers ] { #category : #'world menu' } @@ -105,26 +105,28 @@ MiDependencyBrowser >> canTagEntities [ { #category : #actions } MiDependencyBrowser >> followEntity: anEntity [ - diagram - entities: (anEntity asMooseGroup select: [ :a | - a usesFamixTrait: TEntityMetaLevelDependency ]); + entities := anEntity asMooseGroup select: [ :a | + a usesFamixTrait: TEntityMetaLevelDependency ]. + visualization + entities: entities; run ] -{ #category : #actions } -MiDependencyBrowser >> highlightEntity: anEntity [ +{ #category : #accessing } +MiDependencyBrowser >> initialize [ - diagram highlightEntities: anEntity asCollection + super initialize. + entities := MooseGroup new ] { #category : #initialization } MiDependencyBrowser >> initializePresenters [ - diagram := self instantiate: MiDependencyVisualization + visualization := self instantiate: MiDependencyVisualization ] { #category : #accessing } MiDependencyBrowser >> miSelectedItem [ - ^ diagram selected ifNil: [ diagram entities ] + ^ entities ] diff --git a/src/MooseIDE-Dependency/MiDependencyVisualization.class.st b/src/MooseIDE-Dependency/MiDependencyVisualization.class.st index a71cc05ba..47d67e76e 100644 --- a/src/MooseIDE-Dependency/MiDependencyVisualization.class.st +++ b/src/MooseIDE-Dependency/MiDependencyVisualization.class.st @@ -75,15 +75,6 @@ MiDependencyVisualization >> entities: aCollection [ entities := aCollection ] -{ #category : #highlighting } -MiDependencyVisualization >> highlightShapes [ - "It would be interesting to color edges as well but we have to choose a behavior: - when only one of the source & target is highlighted VS when both are highlighted" - - self canvas nodes - do: [ :box | box color: (self colorFor: box model) ] -] - { #category : #initialization } MiDependencyVisualization >> initialize [ @@ -127,18 +118,6 @@ MiDependencyVisualization >> legendArrowColored: aColor [ yourself ] -{ #category : #running } -MiDependencyVisualization >> makeHighlightable: shape [ - shape - @ - (RSHighlightable new - withEdges; - highlightColor: [ :edge | - edge = shape - ifTrue: [ self highlightColor ] - ifFalse: [ self colorForEdge: edge ofShape: shape ] ]) -] - { #category : #helpers } MiDependencyVisualization >> noHighlightColorFor: anEntity [ ^ self colorScale scale: anEntity numberOfLinesOfCode @@ -185,6 +164,5 @@ MiDependencyVisualization >> shapeForEntity: node [ self selected: entity. owner updateToolbar ]) marginPercentage: 0.5); yourself. - self makeHighlightable: shape. ^ shape ] diff --git a/src/MooseIDE-LayerVisualization/MiLayerVisualization.class.st b/src/MooseIDE-LayerVisualization/MiLayerVisualization.class.st index 8f0c53c2c..af4b12309 100644 --- a/src/MooseIDE-LayerVisualization/MiLayerVisualization.class.st +++ b/src/MooseIDE-LayerVisualization/MiLayerVisualization.class.st @@ -4,20 +4,10 @@ I have a canvas and I use a builder (MiLayerVisualizationBuilder). " Class { #name : #MiLayerVisualization, - #superclass : #MiAbstractVisualization, - #instVars : [ - 'builder' - ], + #superclass : #MiAbstractHierarchicalVisualization, #category : #'MooseIDE-LayerVisualization-Presenters' } -{ #category : #highlighting } -MiLayerVisualization >> highlightShapes [ - - - -] - { #category : #accessing } MiLayerVisualization >> model [ diff --git a/src/MooseIDE-Tests/MiDependencyBrowser.extension.st b/src/MooseIDE-Tests/MiDependencyBrowser.extension.st index 90cbfb469..4313837ae 100644 --- a/src/MooseIDE-Tests/MiDependencyBrowser.extension.st +++ b/src/MooseIDE-Tests/MiDependencyBrowser.extension.st @@ -3,5 +3,5 @@ Extension { #name : #MiDependencyBrowser } { #category : #'*MooseIDE-Tests' } MiDependencyBrowser >> diagram [ - ^ diagram + ^ visualization ] diff --git a/src/MooseIDE-Tests/MiDependencyBrowserTest.class.st b/src/MooseIDE-Tests/MiDependencyBrowserTest.class.st index cfaa77e0d..1a8332189 100644 --- a/src/MooseIDE-Tests/MiDependencyBrowserTest.class.st +++ b/src/MooseIDE-Tests/MiDependencyBrowserTest.class.st @@ -43,8 +43,5 @@ MiDependencyBrowserTest >> testMiSelectedItem [ browser receiveEntity: (MooseGroup with: entityToSelect). self assert: browser miSelectedItem isMooseObject. - self assert: browser miSelectedItem anyOne equals: entityToSelect. - - browser diagram canvas shapes anyOne click. - self assert: browser miSelectedItem equals: entityToSelect + self assert: browser miSelectedItem anyOne equals: entityToSelect ] diff --git a/src/MooseIDE-Tests/MiHierarchicalVisualizationTest.class.st b/src/MooseIDE-Tests/MiHierarchicalVisualizationTest.class.st deleted file mode 100644 index 347ec7f6f..000000000 --- a/src/MooseIDE-Tests/MiHierarchicalVisualizationTest.class.st +++ /dev/null @@ -1,37 +0,0 @@ -Class { - #name : #MiHierarchicalVisualizationTest, - #superclass : #TestCase, - #instVars : [ - 'viz' - ], - #category : #'MooseIDE-Tests-Browsers' -} - -{ #category : #tests } -MiHierarchicalVisualizationTest >> setUp [ - super setUp. - viz := MiHierarchicalVisualization new. - viz childrenBlock: [ :any | #() ] - -] - -{ #category : #tests } -MiHierarchicalVisualizationTest >> testDefaultNodeIconForClass [ - - self assert: (viz nodeFor: FamixJavaClass new) iconName equals: #famixClass -] - -{ #category : #tests } -MiHierarchicalVisualizationTest >> testDefaultNodeIconForUnknown [ - - self assert: (viz nodeFor: FamixJavaComment new) iconName equals: nil -] - -{ #category : #tests } -MiHierarchicalVisualizationTest >> testNodeName [ - | entity | - entity := FamixJavaClass new - name: #blah ; - yourself. - self assert: (viz nodeFor: entity) name equals: #blah -] diff --git a/src/MooseIDE-Visualization/MiAbstractHierarchicalVisualization.class.st b/src/MooseIDE-Visualization/MiAbstractHierarchicalVisualization.class.st new file mode 100644 index 000000000..2d2cca0ae --- /dev/null +++ b/src/MooseIDE-Visualization/MiAbstractHierarchicalVisualization.class.st @@ -0,0 +1,26 @@ +Class { + #name : #MiAbstractHierarchicalVisualization, + #superclass : #MiAbstractVisualization, + #instVars : [ + 'builder' + ], + #category : #'MooseIDE-Visualization-Helpers' +} + +{ #category : #accessing } +MiAbstractHierarchicalVisualization >> builder [ + + ^ builder +] + +{ #category : #accessing } +MiAbstractHierarchicalVisualization >> builder: anObject [ + + builder := anObject +] + +{ #category : #'as yet unclassified' } +MiAbstractHierarchicalVisualization >> modelForShape: aShape [ + + ^ aShape model rawModel +] diff --git a/src/MooseIDE-Visualization/MiAbstractVisualization.class.st b/src/MooseIDE-Visualization/MiAbstractVisualization.class.st index 2106b1e07..2be38c53b 100644 --- a/src/MooseIDE-Visualization/MiAbstractVisualization.class.st +++ b/src/MooseIDE-Visualization/MiAbstractVisualization.class.st @@ -21,16 +21,16 @@ MiAbstractVisualization >> highlightColor [ { #category : #highlighting } MiAbstractVisualization >> highlightEntities: someEntities [ - self highlightedEntities: someEntities. + + self highlightedEntities: someEntities asMooseGroup. self highlightShapes. self canvas signalUpdate ] { #category : #highlighting } MiAbstractVisualization >> highlightShapes [ - "Override to react to Midas highlight action" - - self subclassResponsibility + + self selectShapes: self shapesWithModel ] { #category : #accessing } @@ -50,6 +50,19 @@ MiAbstractVisualization >> initialize [ self script: [ :canvas | canvas @ RSCanvasController new noLegend ] ] +{ #category : #accessing } +MiAbstractVisualization >> miSelectedItem [ + + ^ self canvas selectedShapes collect: [ :shape | + self modelForShape: shape ] +] + +{ #category : #'as yet unclassified' } +MiAbstractVisualization >> modelForShape: aShape [ + + ^ aShape model +] + { #category : #helpers } MiAbstractVisualization >> noHighlightColorFor: anEntity [ ^ self theme selectionColor @@ -60,6 +73,21 @@ MiAbstractVisualization >> run [ self refresh ] +{ #category : #highlighting } +MiAbstractVisualization >> selectShapes: shapes [ + + self canvas setSelectedShapes: shapes +] + +{ #category : #highlighting } +MiAbstractVisualization >> shapesWithModel [ + + ^ self canvas shapes select: [ :shape | + shape isLine not and: [ + shape model notNil and: [ + highlightedEntities includes: (self modelForShape: shape) ] ] ] +] + { #category : #highlighting } MiAbstractVisualization >> unHighlight [ highlightedEntities := MooseGroup new diff --git a/src/MooseIDE-Visualization/MiHierarchicalVisualization.class.st b/src/MooseIDE-Visualization/MiHierarchicalVisualization.class.st deleted file mode 100644 index 4609ceacc..000000000 --- a/src/MooseIDE-Visualization/MiHierarchicalVisualization.class.st +++ /dev/null @@ -1,93 +0,0 @@ -Class { - #name : #MiHierarchicalVisualization, - #superclass : #MiAbstractVisualization, - #instVars : [ - 'rootNode', - 'builder', - 'childrenBlock', - 'visualizationTheme' - ], - #category : #'MooseIDE-Visualization-Hierarchical Visualization' -} - -{ #category : #accessing } -MiHierarchicalVisualization >> childrenBlock: aBlock [ - - "a block with one parameter: entity that return the list of children of this entity" - - childrenBlock := aBlock -] - -{ #category : #running } -MiHierarchicalVisualization >> entities: aCollection [ - - rootNode children: - (aCollection collect: [ :entity | self nodeFor: entity ]) -] - -{ #category : #highlighting } -MiHierarchicalVisualization >> highlightShapes [ - -] - -{ #category : #initialization } -MiHierarchicalVisualization >> initialize [ - - super initialize. - rootNode := HNode new name: 'Root'. - visualizationTheme := MiVisualizationTheme new - -] - -{ #category : #running } -MiHierarchicalVisualization >> mooseIconNameFor: anEntity [ - ^self visualizationTheme mooseIconNameFor: anEntity -] - -{ #category : #running } -MiHierarchicalVisualization >> nodeColor [ - - ^ Color - r: 0.68 - g: 0.83 - b: 0.97 - alpha: 0.4 -] - -{ #category : #running } -MiHierarchicalVisualization >> nodeFor: entity [ - - | node | - node := HNode new - name: entity name ; - color: self nodeColor ; - iconName: (self mooseIconNameFor: entity) ; - yourself. - - node addAll: ((childrenBlock value: entity) collect: [ :child | - (self nodeFor: child) collapse ]). - ^ node -] - -{ #category : #running } -MiHierarchicalVisualization >> run [ - - super run. - builder := HSimpleVisualizationBuilder new - nodeStyler: MiNodeStyler new ; - rootNode: rootNode ; - container: self canvas ; - yourself. - builder build. - self canvas zoomToFit -] - -{ #category : #accessing } -MiHierarchicalVisualization >> visualizationTheme [ - ^visualizationTheme -] - -{ #category : #accessing } -MiHierarchicalVisualization >> visualizationTheme: anObject [ - visualizationTheme := anObject -] diff --git a/src/MooseIDE-Visualization/MiHierarchicalVisualizationBrowser.class.st b/src/MooseIDE-Visualization/MiHierarchicalVisualizationBrowser.class.st deleted file mode 100644 index 2837bb098..000000000 --- a/src/MooseIDE-Visualization/MiHierarchicalVisualizationBrowser.class.st +++ /dev/null @@ -1,86 +0,0 @@ -" -I am a browser that displays hierarchical visualization. - -Controls: - -* Mouse over to highlight common inner boxes -* Mouse click to keep the highlight -* right click over a box, to use the menu -* right click over the view to use the general menu -* command+click to use the last tag. - -* Mouse left to drag -* Arrrow keys to move the visualization around -* Scrolls bars to change the view's position -* M to collapse or expand the window -* I to zoom in -* O to zoom out -* Moouse Wheel to zoom in/out -* S to search entities by their name (several search can be applied) -* R to clear all searches -" -Class { - #name : #MiHierarchicalVisualizationBrowser, - #superclass : #MiAbstractBrowser, - #instVars : [ - 'diagram' - ], - #category : #'MooseIDE-Visualization-Hierarchical Visualization' -} - -{ #category : #menu } -MiHierarchicalVisualizationBrowser class >> addToMiBrowsersMenu: aMenuGroupPresenter [ - - "Do not appear in menu" - - -] - -{ #category : #layout } -MiHierarchicalVisualizationBrowser class >> defaultLayout [ - - ^ super defaultLayout - add: #diagram; - yourself -] - -{ #category : #'instance creation' } -MiHierarchicalVisualizationBrowser class >> open [ - -