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

[...]
> 
> 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


Back to the top