Where is ExternalForm?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Where is ExternalForm?

Eliot Miranda-2
Hi All, clueless here...

    the Squeak 5.2 release notes state:
"Balloon
- Balloon primitive methods now return default values instead of failing if there is no plugin available
- ExternalForm from the EToys package has been added"
but there is no such class as ExternalForm n the image.  And I can't find the package.  Was it Graphics-External or FFI-External?  And where is it?

_,,,^..^,,,_
best, Eliot


Reply | Threaded
Open this post in threaded view
|

Re: Where is ExternalForm?

Eliot Miranda-2


On Tue, Oct 16, 2018 at 9:34 AM Eliot Miranda <[hidden email]> wrote:
Hi All, clueless here...

    the Squeak 5.2 release notes state:
"Balloon
- Balloon primitive methods now return default values instead of failing if there is no plugin available
- ExternalForm from the EToys package has been added"
but there is no such class as ExternalForm n the image.  And I can't find the package.  Was it Graphics-External or FFI-External?  And where is it?

Found it:
MCHttpRepository location: 'http://www.squeaksource.com/Balloon3D'
ETN

_,,,^..^,,,_
best, Eliot


--
_,,,^..^,,,_
best, Eliot


Reply | Threaded
Open this post in threaded view
|

Re: Where is ExternalForm?

Eliot Miranda-2
Hi All,
On Tue, Oct 16, 2018 at 9:45 AM Eliot Miranda <[hidden email]> wrote:


On Tue, Oct 16, 2018 at 9:34 AM Eliot Miranda <[hidden email]> wrote:
Hi All, clueless here...

    the Squeak 5.2 release notes state:
"Balloon
- Balloon primitive methods now return default values instead of failing if there is no plugin available
- ExternalForm from the EToys package has been added"
but there is no such class as ExternalForm n the image.  And I can't find the package.  Was it Graphics-External or FFI-External?  And where is it?

Found it:
MCHttpRepository location: 'http://www.squeaksource.com/Balloon3D'

OK, now I'm really confused.  In http://www.squeaksource.com/Balloon3D there are three packages, Balloon3D-External from January 2009, Graphics-External from January 2009, and GraphicsExternal from April 2017.  All have null implementations of the surface functions, e.g.

ExternalScreen methods for primitives-forms
primAllocateForm: d width: w height: h
"Primitive. Allocate a form with the given parameters"
^nil
primDestroyForm: aHandle
"Primitive. Destroy the form associated with the given handle."
^nil

Where are the actual primitives for the SurfacePlugin (package & repository)?
ETN

_,,,^..^,,,_
best, Eliot


--
_,,,^..^,,,_
best, Eliot


--
_,,,^..^,,,_
best, Eliot


Reply | Threaded
Open this post in threaded view
|

Re: [Vm-dev] Where is ExternalForm?

Bert Freudenberg
On Tue, Oct 16, 2018 at 9:52 AM Eliot Miranda <[hidden email]> wrote:
 
Hi All,
On Tue, Oct 16, 2018 at 9:45 AM Eliot Miranda <[hidden email]> wrote:


On Tue, Oct 16, 2018 at 9:34 AM Eliot Miranda <[hidden email]> wrote:
Hi All, clueless here...

    the Squeak 5.2 release notes state:
"Balloon
- Balloon primitive methods now return default values instead of failing if there is no plugin available
- ExternalForm from the EToys package has been added"
but there is no such class as ExternalForm n the image.  And I can't find the package.  Was it Graphics-External or FFI-External?  And where is it?

Found it:
MCHttpRepository location: 'http://www.squeaksource.com/Balloon3D'

OK, now I'm really confused.  In http://www.squeaksource.com/Balloon3D there are three packages, Balloon3D-External from January 2009, Graphics-External from January 2009, and GraphicsExternal from April 2017.  All have null implementations of the surface functions, e.g.

ExternalScreen methods for primitives-forms
primAllocateForm: d width: w height: h
"Primitive. Allocate a form with the given parameters"
^nil
primDestroyForm: aHandle
"Primitive. Destroy the form associated with the given handle."
^nil

Where are the actual primitives for the SurfacePlugin (package & repository)?

These are not needed anymore. An external form nowadays is a regular Form that has a SmallInteger as bits instead of a BitMap. When BitBlt sees that integer it treats it as a SurfacePlugin handle to fetch the actual bits. There is no direct interaction between the image and SurfacePlugin, that's why there are no primitives. Other plugins (e.g. Rome) use SurfacePlugin to make forms interact with BitBlt correctly.

-  Bert -