Pyramid icon indicating copy to clipboard operation
Pyramid copied to clipboard

SimpleRene Integration

Open Nyan11 opened this issue 5 months ago • 1 comments

SimpleRene is a meta-description tool used to describe object in Pharo.

https://github.com/pharo-contributions/SimpleRene

The idea behind the SimpleRene integration is to describe Bloc and Toplo using SimpleRene and compute the equivalent PyramidProperty.

Example

For example:

  • A BlElement has a BlBackground
  • A BlBackground is eitheir a BlTransparentBackground or a BlPaintBackground.
  • A BlPaintBackground has a Color
  • A Color has 3 Integers (red, green and blue)

With all of this informations, we can create 2 PyramidProperties for a BlElement:

  • One is a choice between the BlTransparentBackground and the BlPaintBackground.
  • One is a color selector for BlPaintBackground (3 number inputs).

This 2 properties can be used to create the Pyramid UI (one selection between 2 values and one input with 3 integers)

Pros and Cons

The pros

  • We remove one dependance from Pyramid (at least for the properties, not for the display in the middle)
  • We remove a lot of code from Pyramid
  • We make Pyramid more generic and more extensible
    • Anyone can add a meta-description to Bloc Object and this meta-description could be interpreted by Pyramid.
  • We use a meta-description tool that can be used for other things and therefor we make it more robust.
    • Serialization: replace Stash pragmas with SimpleRene descriptions.
    • Domain Object: automaticaly put domain object insides Bloc UI using Pyramid

The cons

  • We have a lot of things to change
  • We have to meta-describe all of Bloc and Toplo
  • Will SimpleRene be easy to use ?

Nyan11 avatar Sep 03 '24 07:09 Nyan11