[MonoDevelop] Larger set of stetic patches

Rafael Teixeira monoman at gmail.com
Fri Jun 30 09:32:26 EDT 2006


Inline

On 6/29/06, Lluis Sanchez <lluis at ximian.com> wrote:
> Ok, so right now Stetic gets the information about widgets from an
> objects.xml file embedded in the library. What you are proposing is to
> read that information, or at least part of it, from the widget classes
> using reflection. That's an important change in the model, so it needs
> some thinking.
>
> There are at least two scenarios in which an xml description is
> necessary and can't be replaced by reflection:
>
>       * When we can't modify the widget library to add attributes.
>         That's the case of gtk#.

There's no technical dificulty here, it is a design decision, that
I've been advocating for some time.

>       * When building a dll which implements both widgets and windows
>         that contain instances of those widgets. The problem in this
>         case is that we need to have the widget description before
>         compiling, but we don't have a dll to reflect.

Yes, that is why in VS.NET normally you separate components into
topologically-lower libraries and the windows/forms that use them in
other libraries or the main exe. After design is finished, some
reusable windows may be rafactored (moved) to the lower libraries, as
it is just a design-time issue. Not the cleanest thing but
nevertheless usable.

> So we still need to support the xml model, and I'm not sure it is a good
> idea to provide another model for describing widgets. In any case I
> don't think that mixing both models is good. A library should describe a
> widget either using xml or reflection, but not a mix of both.

Yes, we shouldn't mix things. I vote for reflection all the way but I
will defer it to the time I have some working code to show...

Fun,

-- 
Rafael "Monoman" Teixeira
---------------------------------------
"The reasonable man adapts himself to the world; the unreasonable one
persists in trying to adapt the world to himself. Therefore all
progress depends on the unreasonable man." George Bernard Shaw


More information about the Monodevelop-list mailing list