Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [e4-dev] Declarative UI in E4


Tom, agree with everything you've said below.

Mind you, you were the one that got me thinking about composite nesting as a by-product of a good declarative approach, so perhaps not so surprising I'm in agreement :)

Kevin




Tom Schindl <tom.schindl@xxxxxxxxxxxxxxx>
Sent by: e4-dev-bounces@xxxxxxxxxxx

01/27/2009 06:41 PM

Please respond to
E4 Project developer mailing list <e4-dev@xxxxxxxxxxx>

To
E4 Project developer mailing list <e4-dev@xxxxxxxxxxx>
cc
Subject
Re: [e4-dev] Declarative UI in E4





[...]
>
> As a super-minor example, in CSS you can set margins.  Our SWT widgets
> don't have equivalent API for margins.  The way to implement it in SWT
> is with a Composite and layout.  But my declarative UI likely won't have
> that composite.  Ideally the widget generation would be in cohoots with
> CSS and gen the right composites with layout values.  So not 1:1.  
>

What you describe here is exactly what UFaceKit solves already. Without
having had time to look at both. I think UFaceKit is somewhere in
between those 2. We have a Button, Input, ... -Control but hide
completely from the user how the real UI-Widget-Structure looks like.

The nice thing with this wrapping is that as long as there's margin set
an Input-Widget is simply an SWT control but when a margin is set we
dispose the original Text-Widget and recreate it wrapped with a
Composite. The other advantage is that this wrapping can take in account
how a CSS-Information is implemented most effeciently for the widget.

By the way UFaceKit already has an EMF-Model to describe the UI. The 2
best implementations are today the ones for SWT and QT (see my latest
blogging) but I just received a mail today from a community member who'd
like to work on GWT and by one of our Declarative Styling possibilities
has 0-dependencies beside a XML-DOM-Parser (~130 Lines) and the complete
style-system is made up from 10 Classes - I admit it is not 100%
CSS-Compatible (with all the features we many of us didn't even know
CSS-Provides) but I think we can't apply CSS 100% to Widget-Toolkits.

I take the position that:
* we need to look at CSS (or Declarative-Styling) and Declarative-UI as
 a whole and not make them seperate areas.
* we don't need 100% CSS
* we should make things easy to style with CSS even if this means we are
 adding e.g. custom attributes or teaching CSS custom attributes.

By the way one of the most exiting toolkits when it comes to declarative
ui styleing is QT [1] and we could e.g. learn from the how to style our
tabs in an easy way.

Tom

[1]http://labs.trolltech.com/blogs/2007/06/22/styling-the-tab-widget/

--
B e s t S o l u t i o n . a t                        EDV Systemhaus GmbH
------------------------------------------------------------------------
tom schindl                               leiter softwareentwicklung/CSO
------------------------------------------------------------------------
eduard-bodem-gasse 8/3    A-6020 innsbruck      phone    ++43 512 935834
_______________________________________________
e4-dev mailing list
e4-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/e4-dev


Back to the top