My second iteration on the design after initial feedback.

>                    Design Notes for the Print Module
>                    =================================
> 
> 
> This is the initial goal for the print module. It supports a single print,
> one image per page. Adding templates, multi-images per page, rotation... will
> be discussed later if there is needs for it. But as dt is a professional photo
> application I'm not sure this is a goal for dt. At least some other software
> around are dedicated to "fun" printing.
> 
> On important goal after the first iteration is that dt should not add
> dependencies if possible. This second design notes are using plain
> Gtk+ services. No CUPS API, not Gutenprint or whatever. We realy on
> what/how printers are configured on the systems. Be it on CUPS or
> whatever and using whatever backend (hplip, gutenprint...).
> 
> =========
> == GUI ==
> =========
> 
> A first snapshot of the print module is available and propose:
> 
> /// LEFT
> On the left the collect and image information modules.
> 
> /// CENTER
> On the center the main display with the page and the image on it. This
> center area is the print-preview and will display:
> 
>    - the page itself
>    - the image on it
>    - the non-printable area materialized
>    - the user margins
> 
> We probably want the soft-proofing to work on this area.
> 
> /// RIGHT
> On the right the printing control itself.
> 
> This controls on the right has 3 sections:
> 
> --
> -- page --
> --
> 
> Four controls will be added to add some margins. A possibility to set
> all margins together is provided.
> 
> Changing the borders will change the center display.
> 
> A button to set the page settings using the Gtk+ dialog.
> 
> --
> -- print --
> --
> 
> This is the final print controls. We have:
> 
> - the intent
> - the printer profile
> - the style
> 
> The [print] button using Gtk+ dialog.
> 
> The print button will open the print dialog and will basiacally do
> the following:
> 
>    - open the standard Gtk+ print dialog
>      here the user can select/change every option of the printer
> 
>      the user either Cancel or Print, if the later the following
>      is done:
> 
>        - create a cairo surface
> 
>        - put the image into this surface
> 
>        - ?? apply the printer profile + intent (should be possible, but how?)
> 
>        - create the GtkPrintJob and send to printer
> 
> 
> ==============
> == Internal ==
> ==============
> 
> The internal code will be mostly on those files:
> 
> src/views/print.c          - the print module itself
> 
> src/libs/print_settings.c  - the print dialog as seen on the right
> 
> An important point is to remember all the printer settings (first section
> above, the driver settings) from one session to the other. Gtk has
> support for this.

-- 
  Pascal Obry /  Magny Les Hameaux (78)

  The best way to travel is by means of imagination

  http://v2p.fr.eu.org
  http://www.obry.net

  gpg --keyserver keys.gnupg.net --recv-key F949BD3B


------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
darktable-devel mailing list
darktable-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/darktable-devel

Reply via email to