Re: [gedit-list] First pass hack of gedit and gtksourceview port to gtkprintoperation
- From: Alexander Larsson <alexl redhat com>
- To: Paolo Maggi <paolo maggi polito it>
- Cc: gedit-list gnome org, gtk-devel-list gnome org
- Subject: Re: [gedit-list] First pass hack of gedit and gtksourceview port to gtkprintoperation
- Date: Tue, 02 May 2006 14:44:21 +0200
On Mon, 2006-05-01 at 12:48 +0200, Paolo Maggi wrote:
> [Resending since it seems my previous mail was sent from the wrong address]
>
> Hi
>
> > I'm not sure what is the best way to avoid problems with pagination
> > blocking the ui for a long time. Alex opened a bug about allowing
> rendering
> > to happen in a thread.
> >
>
> What about adding a "paginator" interface that programs must/can
> implement?
> A "paginator" emits signals while proceeding, this signal can be used by
> gtk+ or by the program itself to show a progress bar or similar UI
> element.
>
> The GtkPrintPaginator interface should emit three signals:
>
> - begin_page (GtkPrintPaginator *p): emitted when starting to paginate a
> new page
> - finished (GtkPrintPaginator *p): emitted when pagination ends
> - canceled (GtkPrintPaginator *p): if pagination is canceled
It looks strange to me to have the paginator canceling. Surely its the
dialog showed by GtkPrintOperation that does the actual cancel? I guess
it might be useful if you do your own progress dialog.
> The interface should have at least the following methods:
>
> - setup: to pass the GtkPrintContext, GtkPageSetup and GtkPrintSettings
> (may other info are needed for the pagination too)
> - paginate: to start pagination
> - cancel: to cancel pagination
> - get_page: returns the number of the page being paginated
> - get_page_count: determines the total number of pages the job will
> print; the returned value is only meaningful after pagination has
> finished.
>
> We can then add the following operations to GtkPrintOperation:
>
> void gtk_print_operation_set_paginator (GtkPrintOperation *op,
> GtkPrintPaginator *p);
>
> void gtk_print_operation_set_show_pagination_progress
> (GtkPrintOperation *op,
> gboolean show_progress);
Yes, something like this should be quite workable. Would you be
interested in looking at implementing this?
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Alexander Larsson Red Hat, Inc
alexl redhat com alla lysator liu se
He's an impetuous pirate werewolf searching for his wife's true killer. She's
a time-travelling hip-hop soap star with an incredible destiny. They fight
crime!
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]