Electronics & Programming

develissimo

Open Source electronics development and programming

  • You are not logged in.
  • Root
  • » Glade
  • » [Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper) [RSS Feed]

#1 March 21, 2008 23:01:33

Paul D.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper)


I have read this paper from Luca Cardelli around 1998.
I have found it very interesting, and always have found the vbox and
hbox model deceiving in comparison. I guess I have had since the first
time I had read it the intention of one day implementing these
stretching rules, but never become good enough or care enough to
actually implement them.

But I really wish something like that (stretching rules) to be
available inside Glade.

The paper is now very old (written in 1988 I think). But I think that
some of the ideas should have been implemented a long time ago in
tools like Glade.

Here is a place where you can download it without being a member of
ACM (which I am not):http://lucacardelli.name/Papers/Toolkit.pdfHope someone among you could at least read the section 2 and see if it
can be used inside/with Glade.
_______________________________________________
Glade-devel maillist - Glade-devel@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/glade-devel

Offline

#2 March 21, 2008 23:16:25

Paul D.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper)


Oh, now that I think about it...
This building interface is supposed to have been implemented inside
Modula-3 programming language. Modula-3 is derived from Modula-2, a
bit like Oberon is derived from Modula-2, Modula-2 being derived from
Pascal.
In 1998, my computer had not enough memory to compile Modula-3, but
today, with my incredible 1GB, I should have enough...

2008/3/21, Paul Dufresne <>:
...
> Here is a place where you can download it without being a member of
> ACM (which I am not):
>http://lucacardelli.name/Papers/Toolkit.pdf>
> Hope someone among you could at least read the section 2 and see if it
> can be used inside/with Glade.
_______________________________________________
Glade-devel maillist - Glade-devel@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/glade-devel

Offline

#3 March 22, 2008 04:26:48

Tristan V.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper)


Note this is very toolkit specific, as a designer, what we try to accomplish is
a modular way of editing widgets that exist (for example try
positioning children
inside GtkFixed or GtkLayout), Gazpacho did some interesting things with
GtkBoxes, Glade does at the moment allow Drag & Resize operations on
widgets inside GtkBox and GtkTable widgets.

Ofcourse, inventive patches that make child positioning easier or even more
pretty are always welcome, if you have any implementation ideas even you
are welcome to share them here ;-)

Cheers,
-Tristan

On Fri, Mar 21, 2008 at 7:01 PM, Paul Dufresne <> wrote:
> I have read this paper from Luca Cardelli around 1998.
> I have found it very interesting, and always have found the vbox and
> hbox model deceiving in comparison. I guess I have had since the first
> time I had read it the intention of one day implementing these
> stretching rules, but never become good enough or care enough to
> actually implement them.
>
> But I really wish something like that (stretching rules) to be
> available inside Glade.
>
> The paper is now very old (written in 1988 I think). But I think that
> some of the ideas should have been implemented a long time ago in
> tools like Glade.
>
> Here is a place where you can download it without being a member of
> ACM (which I am not):
>http://lucacardelli.name/Papers/Toolkit.pdf>
> Hope someone among you could at least read the section 2 and see if it
> can be used inside/with Glade.
> _______________________________________________
> Glade-devel maillist - Glade-de***@*ists.ximian.com
>http://lists.ximian.com/mailman/listinfo/glade-devel>
_______________________________________________
Glade-devel maillist - Glade-devel@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/glade-devel

Offline

#4 March 22, 2008 05:23:30

Paul D.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper)


2008/3/21, Tristan Van Berkom <>:
> Note this is very toolkit specific, as a designer, what we try to accomplish
> is
> a modular way of editing widgets that exist (for example try
> positioning children
> inside GtkFixed or GtkLayout),

My guess what I cared about is a variant of GtkFixed (well, the idea
is to not be fixed when stretching, but obey 2 next rules of
stretching).

The big idea is about adding for each children (called interactor in the paper),
four attachment points (North, South, East and West),

Let me extract the usefull rules:

"First rule of stretching: as a dialog stretches from a minimum size,
all the attachment points move proportionally to the stretching of the
dialog."

"Second rule of stretching: as a dialog stretches from a minimum size,
the distance between an attachment point and its interactor edge
remains constant."

That's all about what I care!

To help understand better, the next paragraph:
"An effective heuristic for setting a roughly correct stretching
behaviour is to select all the interactors in a dialog and double
click one of them. This will project all the attachment points of all
the interactors to their corresponding closest dialog edge. (In the
case of the card file dialog, this is exactly what we want:
interactors close to the corners will stick to the corners, and
interactors near the center will stretch in the appropriate direction.)
The few incorrect attachments can then be fixed by hand."
_______________________________________________
Glade-devel maillist - Glade-devel@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/glade-devel

Offline

#5 March 22, 2008 06:29:46

Tristan V.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper)


On Sat, Mar 22, 2008 at 1:23 AM, Paul Dufresne <> wrote:

> "Second rule of stretching: as a dialog stretches from a minimum size,
> the distance between an attachment point and its interactor edge
> remains constant."
>
> That's all about what I care!
>
> To help understand better, the next paragraph:
> "An effective heuristic for setting a roughly correct stretching
> behaviour is to select all the interactors in a dialog and double
> click one of them. This will project all the attachment points of all
> the interactors to their corresponding closest dialog edge. (In the
> case of the card file dialog, this is exactly what we want:
> interactors close to the corners will stick to the corners, and
> interactors near the center will stretch in the appropriate direction.)
> The few incorrect attachments can then be fixed by hand."

Just to make sure I was clear, if we were to discuss about
container widgets in the gtk+ toolkit, we would be discussing
on the Gtk+ mailing list, in Glade all we do is generate xml
UI descriptions... that being said, Gtk+'s resizing capabilities
is one of the bigger advantages of using gtk+ in the first place,
the document you are reffering to describes a different kind of
layout system.

Now, what _would_ be relavent on this list and productive, is
to consider that
a.) We have in our grasp already a highly functional and scalable
widget layout system in gtk+ using its various containers and
alignments
b.) For people used to working in a zordered fixed positioning
system this system is somewhat uncomfortable at first.

So how can we
a.) make our existing systems that are in place more comfortable to use
through the UI.
b.) use our UI to better educate the user about how the widget positioning
system works.

Cheers,
-Tristan
_______________________________________________
Glade-devel maillist - Glade-devel@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/glade-devel

Offline

#6 March 27, 2008 03:42:58

Olivier D.
Registered: 2009-11-02
Reputation: +  0  -
Profile   Send e-mail  

[Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper)


2008/3/22, Tristan Van Berkom <>:
>
>
> So how can we
> a.) make our existing systems that are in place more comfortable to use
> through the UI.
> b.) use our UI to better educate the user about how the widget
> positioning
> system works.


For point b) we can make some assistants to build specific boxes.
Make an interactive presentation where a box is built and where bubbles says
what is beeing done is may be another idea :-)

Cheers,

Olivier._______________________________________________
Glade-devel maillist - Glade-devel@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/glade-devel

Offline

  • Root
  • » Glade
  • » [Glade-devel] Building User Interfaces by Direct Manipulation (Cardelli paper) [RSS Feed]

Board footer

Moderator control

Enjoy the 16th of December
PoweredBy

The Forums are managed by develissimo stuff members, if you find any issues or misplaced content please help us to fix it. Thank you! Tell us via Contact Options
Leave a Message
Welcome to Develissimo Live Support