Show quoted text 26 lines
Mattias Gaertner kirjoitti tiistai 18 tammikuu 2011 03:38:20:
> > In:
> > File -> New... -> Inherited Item -> Inherited Component
> >
> > there are the existing forms of the current project. A new inherited form
> > can be made based on them.
> > IMO the header "Inherited Component" is wrong. It should be "Inherited
> > Form".
>
> All designer base classes: forms, frames, datamodules and customs from
> designer mediators.
>
> > It is misleading because also components can be inherited but these are
> > not components.
>
> ?
Components are typically located in component palette. TEdit and TButton are
components. You can inherit your own component from them, like:
type TMyEdit = class(TEdit)
and you register that new component to the palette, too.
Visual Form Inheritance is different. It deals with form designer and .lfm form
files. Now, Inherited Item -> Inherited Component lists Form1 and Form2 from my
project. They are forms, not components, so "Inherited Component" title is
misleading.
Well, they are all components.
About "component" palette:
The component palette contains the components you can put onto a designer form:
1. Components without an ancestor stream (e.g. TButton)
2. a button for frame, which is VFI with inlining. Delphi has a third: component templates, which are components with an initializing stream. That's easy to implement.
The components you can not put onto a designer form, TWriter calls them "root components", are in the "new dialog".
I think the term 'inhrited forms' would be misleading, because "inherited components" also contains any kind of root components: frames, datamodules and custom root components.
Mattias