[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: WANTED: Perl / GTK+ hacker



Josselin Mouette <joss@debian.org> writes:

> The largest part of the problem is porting from GnomeDruid to
> GtkAssistant, which probably only requires a few hours for a
> knowledgeable person.

The back button of GtkAssistant seems troublesome.
In GnomeDruidPage, the back and next buttons just emit signals,
which Debconf::FrontEnd::Gnome then handles by exiting the main
loop and returning '' or 1 from sub go.  In GtkAssistant however,
the back button backtraces a private visited_pages list, and it
is automatically hidden when this list is empty.

Approaches to be considered:

(a) Prepend an empty GTK_ASSISTANT_PAGE_INTRO.  When displaying the
    GtkAssistant, immediately switch to the GTK_ASSISTANT_PAGE_CONTENT
    where the actual Debconf question is; if the GtkAssistant has
    already been mapped, gtk_assistant_set_current_page then adds
    the intro to visited_pages.  If the user clicks the back button,
    detect the intro page in the prepare signal.

(b) Handle the clicked signal from the back button and make the
    button visible against the wishes of GtkAssistant.  If the
    visited_pages list remains empty at all times, then the
    handler added by GtkAssistant does nothing, and there is no
    need to remove it.

(c) Remove the original back button from its container and add
    a custom one in its place.

(d) Just add a custom button that has nothing to do with the back
    button.

(e) Rewrite Debconf so that the go method of Debconf::FrontEnd
    is allowed to redisplay previous pages without returning.

Attachment: pgpES0rnEcCkV.pgp
Description: PGP signature


Reply to: