Christoph Thiede uploaded a new version of EToys to project The Inbox:
http://source.squeak.org/inbox/EToys-ct.406.mcz ==================== Summary ==================== Name: EToys-ct.406 Author: ct Time: 17 September 2020, 12:23:18.233813 pm UUID: 0b76e3b6-1567-c542-8350-de5b7a28fcf2 Ancestors: EToys-eem.400 Minor Tetris refactorings. Expose action selectors for game control as part of the public Tetris protocol. This will be used to play/pause a tetris game from the outside. Recategorize some methods. This commit is part of reconstruction of Objectland (also known as "The Worlds of Squeak"). For more information, see: http://forum.world.st/The-Inbox-MorphicExtras-ct-267-mcz-td5104764.html =============== Diff against EToys-eem.400 =============== Item was changed: + ----- Method: Tetris class>>colors (in category 'constants') ----- - ----- Method: Tetris class>>colors (in category 'as yet unclassified') ----- colors ^{ Color r: 0.5 g: 0 b: 0. Color r: 0 g: 0.5 b: 0. Color r: 0 g: 0 b: 0.5. Color r: 0.5 g: 0.5 b: 0. Color r: 0.5 g: 0 b: 0.5. Color r: 0 g: 0.5 b: 0.5 } ! Item was changed: ----- Method: Tetris>>makeGameControls (in category 'initialization') ----- makeGameControls ^ self rowForButtons addMorph: (self buildButtonTarget: self label: 'Quit' translated selector: #delete help: 'quit' translated); addMorph: (self + buildButtonTarget: self - buildButtonTarget: board label: 'Pause' translated selector: #pause help: 'pause' translated); addMorph: (self + buildButtonTarget: self - buildButtonTarget: board label: 'New game' translated selector: #newGame help: 'new game' translated)! Item was added: + ----- Method: Tetris>>newGame (in category 'actions') ----- + newGame + + board newGame.! Item was added: + ----- Method: Tetris>>pause (in category 'actions') ----- + pause + + board pause.! Item was changed: + ----- Method: TetrisBlock class>>flipShapes: (in category 'support') ----- - ----- Method: TetrisBlock class>>flipShapes: (in category 'as yet unclassified') ----- flipShapes: anArray ^OrderedCollection new add: anArray; add: (anArray collect: [ :each | each y negated @ each x]); add: (anArray collect: [ :each | each x negated @ each y negated]); add: (anArray collect: [ :each | each y @ each x negated]); yourself ! Item was changed: + ----- Method: TetrisBlock class>>shapeChoices (in category 'constants') ----- - ----- Method: TetrisBlock class>>shapeChoices (in category 'as yet unclassified') ----- shapeChoices ^ ShapeChoices ifNil: [ ShapeChoices := { { { 0 @ 0 . 1 @ 0 . 0 @ 1 . 1 @ 1 } }. "square - one is sufficient here" self flipShapes: { 0 @ 0 . -1 @ 0 . 1 @ 0 . 0 @ -1 }. "T" { { 0 @ 0 . -1 @ 0 . 1 @ 0 . 2 @ 0 }. { 0 @ 0 . 0 @ -1 . 0 @ 1 . 0 @ 2 } "long - two are sufficient here" }. self flipShapes: { 0 @ 0 . 0 @ -1 . 0 @ 1 . 1 @ 1 }. "L" self flipShapes: { 0 @ 0 . 0 @ -1 . 0 @ 1 . -1 @ 1 }. "inverted L" self flipShapes: { 0 @ 0 . -1 @ 0 . 0 @ -1 . 1 @ -1 }. "S" self flipShapes: { 0 @ 0 . 1 @ 0 . 0 @ -1 . -1 @ -1 } "Z" }. ] ! Item was changed: + ----- Method: TetrisBoard>>cellSize (in category 'accessing') ----- - ----- Method: TetrisBoard>>cellSize (in category 'as yet unclassified') ----- cellSize ^12@12! Item was changed: + ----- Method: TetrisBoard>>originForCell: (in category 'accessing') ----- - ----- Method: TetrisBoard>>originForCell: (in category 'as yet unclassified') ----- originForCell: aPoint ^aPoint - (1@1) * self cellSize + self position ! |
> This commit is part of reconstruction of Objectland (also known as "The Worlds of Squeak").
Cool! Stef |
A note about something to do: I noticed that quite a few of the Etoys icons are not added to the ScriptingSystem formDictionary. So when opening a ScriptEditorMorph for example, icons like 'RoundGoldBox' are missing so the UI is crippled. The icons are found in ReleaseBuilderSqueakland but not initialized Best, Karl On Thu, Sep 17, 2020 at 12:42 PM Stéphane Rollandin <[hidden email]> wrote: > This commit is part of reconstruction of Objectland (also known as "The Worlds of Squeak"). |
On Thu, Sep 17, 2020 at 7:26 PM karl ramberg <[hidden email]> wrote:
You just need to do it: ReleaseBuilderSqueakland loadDefaultForms Best, Karl
|
Nice finding, Karl! I guess this has not been made part of the usual ReleaseBuilder for performance (storage) considerations. The question is: Is this still relevant? Should we lazily load all forms if any is missing in the ScriptingSystem?
Best, Christoph Von: Squeak-dev <[hidden email]> im Auftrag von karl ramberg <[hidden email]>
Gesendet: Donnerstag, 17. September 2020 20:31:31 An: The general-purpose Squeak developers list Betreff: Re: [squeak-dev] The Inbox: EToys-ct.406.mcz On Thu, Sep 17, 2020 at 7:26 PM karl ramberg <[hidden email]> wrote:
You just need to do it:
ReleaseBuilderSqueakland loadDefaultForms
Best,
Karl
Carpe Squeak!
|
I'm not sure it is for space reasons. There could be other conflicts. It seems to change some icons for the handles when you do
ReleaseBuilderSqueakland loadDefaultForms
Lazy loading of just the missing icons would be awesome. Best, Karl On Thu, Sep 17, 2020 at 9:04 PM Thiede, Christoph <[hidden email]> wrote:
|
For the 5.3 release, we decided to put that all behind "ReleaseBuilderSqueakland class >> #setEtoysMode" to be triggered from the "Extras > Themes & Colors" docking-bar menu. Best, Marcel
|
Ah, I have never seen that option :-D Best, Karl On Fri, Sep 18, 2020 at 3:11 PM Marcel Taeumel <[hidden email]> wrote:
|
Oh, that's great! I had not noticed it either :-D
Dave On Fri, Sep 18, 2020 at 04:57:03PM +0200, karl ramberg wrote: > Ah, > I have never seen that option :-D > > Best, > Karl > > > On Fri, Sep 18, 2020 at 3:11 PM Marcel Taeumel <[hidden email]> > wrote: > > > For the 5.3 release, we decided to put that all behind > > "ReleaseBuilderSqueakland class >> #setEtoysMode" to be triggered from the > > "Extras > Themes & Colors" docking-bar menu. > > > > Best, > > Marcel > > > > Am 17.09.2020 21:51:16 schrieb karl ramberg <[hidden email]>: > > I'm not sure it is for space reasons. > > There could be other conflicts. > > It seems to change some icons for the handles when you do > > ReleaseBuilderSqueakland loadDefaultForms > > > > Lazy loading of just the missing icons would be awesome. > > > > Best, > > Karl > > > > > > On Thu, Sep 17, 2020 at 9:04 PM Thiede, Christoph < > > [hidden email]> wrote: > > > >> Nice finding, Karl! I guess this has not been made part of the usual > >> ReleaseBuilder for performance (storage) considerations. The question is: > >> Is this still relevant? Should we lazily load all forms if any is missing > >> in the ScriptingSystem? > >> > >> > >> Best, > >> > >> Christoph > >> <http://www.hpi.de/> > >> ------------------------------ > >> *Von:* Squeak-dev <[hidden email]> im > >> Auftrag von karl ramberg <[hidden email]> > >> *Gesendet:* Donnerstag, 17. September 2020 20:31:31 > >> *An:* The general-purpose Squeak developers list > >> *Betreff:* Re: [squeak-dev] The Inbox: EToys-ct.406.mcz > >> > >> > >> > >> On Thu, Sep 17, 2020 at 7:26 PM karl ramberg <[hidden email]> > >> wrote: > >> > >>> A note about something to do: > >>> I noticed that quite a few of the Etoys icons are not added to the > >>> ScriptingSystem formDictionary. > >>> So when opening a ScriptEditorMorph for example, icons like > >>> 'RoundGoldBox' are missing so the UI is crippled. > >>> The icons are found in ReleaseBuilderSqueakland but not initialized > >>> > >> > >> You just need to do it: > >> ReleaseBuilderSqueakland loadDefaultForms > >> Best, > >> Karl > >> > >> > >>> Best, > >>> Karl > >>> > >>> > >>> On Thu, Sep 17, 2020 at 12:42 PM St??phane Rollandin < > >>> [hidden email]> wrote: > >>> > >>>> > This commit is part of reconstruction of Objectland (also known as > >>>> "The Worlds of Squeak"). > >>>> > >>>> Cool! > >>>> > >>>> Stef > >>>> > >>>> > >>>> > >> > > > |
This is good to know, but I wonder whether this is a perfect solution when you want to play a little bit around with some EToys morphs (such as Viewers) without converting your whole image into an EToys optimized one. And you get nowhere informed about the need to activate this EToys mode.
Should we modify the ScriptingSystem so that if an icon is not found, the Squeakland resources are looked up before the default icon is answered? Then you could use all the EToys tools without missing any icon, but still would have your default halo icons etc.
Best, Christoph Von: Squeak-dev <[hidden email]> im Auftrag von David T. Lewis <[hidden email]>
Gesendet: Freitag, 18. September 2020 23:50:50 An: The general-purpose Squeak developers list Betreff: Re: [squeak-dev] The Inbox: EToys-ct.406.mcz Oh, that's great! I had not noticed it either :-D
Dave On Fri, Sep 18, 2020 at 04:57:03PM +0200, karl ramberg wrote: > Ah, > I have never seen that option :-D > > Best, > Karl > > > On Fri, Sep 18, 2020 at 3:11 PM Marcel Taeumel <[hidden email]> > wrote: > > > For the 5.3 release, we decided to put that all behind > > "ReleaseBuilderSqueakland class >> #setEtoysMode" to be triggered from the > > "Extras > Themes & Colors" docking-bar menu. > > > > Best, > > Marcel > > > > Am 17.09.2020 21:51:16 schrieb karl ramberg <[hidden email]>: > > I'm not sure it is for space reasons. > > There could be other conflicts. > > It seems to change some icons for the handles when you do > > ReleaseBuilderSqueakland loadDefaultForms > > > > Lazy loading of just the missing icons would be awesome. > > > > Best, > > Karl > > > > > > On Thu, Sep 17, 2020 at 9:04 PM Thiede, Christoph < > > [hidden email]> wrote: > > > >> Nice finding, Karl! I guess this has not been made part of the usual > >> ReleaseBuilder for performance (storage) considerations. The question is: > >> Is this still relevant? Should we lazily load all forms if any is missing > >> in the ScriptingSystem? > >> > >> > >> Best, > >> > >> Christoph > >> <http://www.hpi.de/> > >> ------------------------------ > >> *Von:* Squeak-dev <[hidden email]> im > >> Auftrag von karl ramberg <[hidden email]> > >> *Gesendet:* Donnerstag, 17. September 2020 20:31:31 > >> *An:* The general-purpose Squeak developers list > >> *Betreff:* Re: [squeak-dev] The Inbox: EToys-ct.406.mcz > >> > >> > >> > >> On Thu, Sep 17, 2020 at 7:26 PM karl ramberg <[hidden email]> > >> wrote: > >> > >>> A note about something to do: > >>> I noticed that quite a few of the Etoys icons are not added to the > >>> ScriptingSystem formDictionary. > >>> So when opening a ScriptEditorMorph for example, icons like > >>> 'RoundGoldBox' are missing so the UI is crippled. > >>> The icons are found in ReleaseBuilderSqueakland but not initialized > >>> > >> > >> You just need to do it: > >> ReleaseBuilderSqueakland loadDefaultForms > >> Best, > >> Karl > >> > >> > >>> Best, > >>> Karl > >>> > >>> > >>> On Thu, Sep 17, 2020 at 12:42 PM St??phane Rollandin < > >>> [hidden email]> wrote: > >>> > >>>> > This commit is part of reconstruction of Objectland (also known as > >>>> "The Worlds of Squeak"). > >>>> > >>>> Cool! > >>>> > >>>> Stef > >>>> > >>>> > >>>> > >> > > >
Carpe Squeak!
|
On Sat, Sep 19, 2020 at 1:33 PM Thiede, Christoph <[hidden email]> wrote:
I think we can just add the most obvious ones. It's not that many. This should cover the most of them: assoc := ReleaseBuilderSqueakland scriptingSystemImage109."RoundGoldBox"ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage127."Try It Pressed" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage064."Try It" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage038."MenuIcon" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage165."AddCategoryViewer" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage171."AddInstanceVariable" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage014."TanOPressed" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage085."TanO" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage053."Gets" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage080."RightCaret" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage044."DownCaret" ScriptingSystem saveForm: assoc value atKey: assoc key. Best, Karl
|
Karl, great finding! This small number of icons should not matter IMO. Can you put this somewhere into the ReleaseBuilder? :-)
Best, Christoph Von: Squeak-dev <[hidden email]> im Auftrag von karl ramberg <[hidden email]>
Gesendet: Samstag, 19. September 2020 14:32:38 An: The general-purpose Squeak developers list Betreff: Re: [squeak-dev] The Inbox: EToys-ct.406.mcz On Sat, Sep 19, 2020 at 1:33 PM Thiede, Christoph <[hidden email]> wrote:
I think we can just add the most obvious ones.
It's not that many.
This should cover the most of them:
assoc := ReleaseBuilderSqueakland scriptingSystemImage109."RoundGoldBox"ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage127."Try It Pressed" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage064."Try It" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage038."MenuIcon" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage165."AddCategoryViewer" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage171."AddInstanceVariable" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage014."TanOPressed" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage085."TanO" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage053."Gets" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage080."RightCaret" ScriptingSystem saveForm: assoc value atKey: assoc key. assoc := ReleaseBuilderSqueakland scriptingSystemImage044."DownCaret" ScriptingSystem saveForm: assoc value atKey: assoc key. Best,
Karl
Carpe Squeak!
|
Free forum by Nabble | Edit this page |