On 15/10/06, Owen Taylor <[EMAIL PROTECTED]> wrote: > On Sun, 2006-10-15 at 18:07 +0200, Nick Gravgaard wrote: > > Hi all, > > > > I would like to implement an idea I call "elastic tabstops" (see > > nickgravgaard.com/elastictabstops/) for GTK+ 2.x. Could someone advise > > me on whether support for this should be added to an exisiting widget > > (GtkTextView?), or if another approach should be used? > > Because the effect is non-local - the contents of one paragraph effect > the drawing (and line wrapping?) of previous/following paragraphs, you'd > certainly have to change the GtkTextView code to make GtkTextView show > that effect. A GtkTextView uses a PangoLayout per paragraph. > > (Nobody uses GtkTextView for editing source code directly, but the > GtkSourceView subclass is used for that extensively. That's a separate > project from GTK+.) > > If you also wanted to get the effect for multi-line GtkLabels then you'd > have to also implement support for it inside Pango, since a GtkLabel > uses a single PangoLayout with multiple paragraphs in it. > > GtkTextView and GtkLabel are the only GTK+ widgets that show multiple > lines of text. > > For both GtkTextView and PangoLayout I think you'd find the job a bit > challenging. (Think days or weeks, not hours.) There is a lot of > existing complexity in both of them you'd have to integrate with. But > possible? I don't see why not.
Thanks for the reply. Ideally I'd like to write the code in a modular way so that it can be easily added to any GTK multi-line text widget, but I'm still at the exploratory stage so I don't know if such an approach is possible. It would be great if I could write something that could be used by GtkTextView, GtkSourceView and whatever widget Vim uses... _______________________________________________ gtk-devel-list mailing list gtk-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-devel-list