Print: add the support to store margins and printer options

All the print options will be stored after the user closes
or "cancels" the print dialog.

There seems to be no good way to store the last
selected page size, because print dialogs are different and
some just list them as strings - A4, A3, etc.

The patch also applies the following changes:
- renames display.h's 'struct options' to 'struct print_options'
as these were really just for the print dialog
- the print_options dialog now stores more options as 'bool'
- demote PrintDialog's 'printOptions' to 'private'

Fixes #653

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Lubomir I. Ivanov 2014-11-14 00:57:42 +02:00 committed by Dirk Hohndel
parent b2077dc9c0
commit 7ea728e95f
7 changed files with 83 additions and 30 deletions

View file

@ -35,16 +35,18 @@ typedef enum {
extern struct divecomputer *select_dc(struct dive *);
struct options {
enum {
struct print_options {
enum print_type {
PRETTY,
TABLE,
TWOPERPAGE,
ONEPERPAGE
} type;
int print_selected;
int color_selected;
bool print_selected;
bool color_selected;
bool notes_up;
bool landscape;
int margins[4]; // left, top, right, bottom
};
extern unsigned int dc_number;