1. Re: VCL

At 02:06 PM 21-02-1999 , you wrote:
>Daniel Berstein wrote:
>
>>VCL is the Visual Component Library. It a collection of native code
>>components that encapsulate (each) a visual interface element ( = control
>>or gadget). It's much simpler to just include a "button" component in your
>>application than to explicitly creating/registering the window class and
>>then create it and make a wndproc. A clear interface is required, in
>>essence you neee OO to achieve this, but with some tricky use of routine
>>id's we should be able to by-pass this obstacle.
>
>Can you point to some reference which gives more details?

Well you can always go to Borland's page (yes, Inprise has begun to use
again the Borland brand) at www.borland.com, or www.inprise.com and take a
look to information regarding Delphi & C++ Builder.  But the actual
implemetation of a component library that Borland made isn't important.
Microsoft has their own (for system wide usage), it's called COM (Component
Object Model) that is the base for other technologies like OLE, ActiveX and
ADO.

COM support in Euphoria would be great, we could use all those ActiveX
controls (.OCX) VB can use... unfortunatly I belive this would be a very
complex task and I'm ot sure if a library wrapper could be built for this
purpose. COM is quite mysterious to me ;)

About this future ECM, Euphoria Component Model, (ECL would be the
"standard" components deployed with Euphoria):

A interface API should be developed to command the component
appearence/functionality. The component should be built providing a defined
interface. Interfaces may be:
        ECM_Create()    -- Creates an instance of the component
        ECM_Destroy()   -- Destroys an instance of the component
        ECM_Command()   -- Send a component specific command (like WinAPI's
SendMessage)
        ECM_GetProperty()       -- Retrives a component property (data member)
        etc...

All components must adhere to the ECM specification interfaces. Note that
not only windows components can be developed. A compression component could
be built, as well as abstarct components (such as a dataset). Versioning
compatibility problems (like in win32lib) would be "softened" by these
standard interfaces.

By adhering to a specification no component would requiere a special
wrapper, ECM is the wrapper. A method to sub-class or inherit a component
would be quite usefull to build a componet tree, allowing third parties to
further customize an existing component. Note that Windows standard/common
controls could be wrapped by ECM components. Euphoria developers would be
(almost) completly abstracted from the underlaying WinAPI!

It's all about abstraction... keep the interfaces simple, let the component
developer do the work. With a component model Euphoria can become a RAD
tool. ECM would do to Euphoria what Delphi (VCL) did to Pascal.

Any suggestion?


Regards,
        Daniel   Berstein
        daber at pair.com

new topic     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu