Scenery

Tudor Girba via discord This comment adds a little context to what Scenery is: github a mechanism that replaces Diagrammer and that allows us to construct (and serialize) scenes of arbitrary elements. Essentially, it's a Canvas that can hold elements through stencils that can serialize the elements. This means that you can edit the elements (for now resizing and relocation) and scenery will be able to reserialize this. It's very basic for now, but it gives us a hint of the architecture that can unify workspaces and diagramming tools.

scenery := GtScenery new. item1 := scenery addItem: [ (GtWorkingWithTheGitHubRestApiShow new responseForFeenkOrg gtJsonFor: GtPhlowEmptyView new) asElementDo: [ :e | e background: Color white; aptitude: BrShadowAptitude; margin: (BlInsets all: 10) ] ] asStencil. item1 extent: 400 @ 400. item2 := scenery addItem: (GtInspectorSceneryStencil new target: [ GhOrganization new rawData: (STON fromString: (ZnClient new get: 'https://api.github.com/orgs/feenkcom')) ]). item2 position: 600 @ 0; extent: 400 @ 400. item3 := scenery addItem: [ (GtWorkingWithTheGitHubRestApiShow new responseForGToolkitRepo gtJsonFor: GtPhlowEmptyView new) asElementDo: [ :e | e background: Color white; aptitude: BrShadowAptitude; margin: (BlInsets all: 10) ] ] asStencil. item3 position: 600 @ 600; extent: 400 @ 400. item4 := scenery addItem: (GtInspectorSceneryStencil new target: [ GhRepo new rawData: (STON fromString: (ZnClient new get: 'https://api.github.com/repos/feenkcom/gtoolkit')) ]). item4 position: 1200 @ 600; extent: 400 @ 400. scenery addConnection: (GtParabollaArcSceneryStencil new labelText: 'wrap & view') from: item1 to: item2. scenery addConnection: (GtParabollaArcSceneryStencil new labelText: 'explore') from: item2 to: item3. scenery addConnection: (GtParabollaArcSceneryStencil new labelText: 'wrap & view') from: item3 to: item4. scenery

~

We would like to use Scenery for a Behavior Tree to generate a Croquet Microverse Scene.vrse File. github