gtkmm: Gtk::PaperSize Class Reference

gtkmm 4.10.0

Public Member Functions | Static Public Member Functions | Protected Attributes | Related Functions | List of all members
Gtk::PaperSize Class Reference
Printing

PaperSize handles paper sizes. More...

`#include <gtkmm/papersize.h>`

## Public Member Functions
| PaperSize ()
| PaperSize (GtkPaperSize * gobject, bool make_a_copy=true)
| PaperSize (const PaperSize & other)
PaperSize & | operator= (const PaperSize & other)
| PaperSize (PaperSize && other) noexcept
PaperSize & | operator= (PaperSize && other) noexcept
| ~PaperSize () noexcept
void | swap (PaperSize & other) noexcept
GtkPaperSize * | gobj ()
| Provides access to the underlying C instance.
const GtkPaperSize * | gobj () const
| Provides access to the underlying C instance.
GtkPaperSize * | gobj_copy () const
| Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.
| PaperSize (const Glib::ustring & name)
| PaperSize (const Glib::ustring & ppd_name, const Glib::ustring & ppd_display_name, double width, double height)
| PaperSize (const Glib::ustring & name, const Glib::ustring & display_name, double width, double height, Unit unit)
| PaperSize (const Glib::RefPtr< const Glib::KeyFile > & key_file, const Glib::ustring & group_name={})
| Reads a paper size from the group group_name in the key file key_file.
bool | equal (const PaperSize & other) const
| operator bool () const
| Returns true if the PaperSize is a valid object.
Glib::ustring | get_name () const
| Gets the name of the `Gtk::PaperSize`.
Glib::ustring | get_display_name () const
| Gets the human-readable name of the `Gtk::PaperSize`.
Glib::ustring | get_ppd_name () const
| Gets the PPD name of the `Gtk::PaperSize`, which may be `nullptr`.
double | get_width (Unit unit) const
| Gets the paper width of the `Gtk::PaperSize`, in units of unit.
double | get_height (Unit unit) const
| Gets the paper height of the `Gtk::PaperSize`, in units of unit.
bool | is_custom () const
| Returns `true` if size is not a standard paper size.
bool | is_ipp () const
| Returns `true` if size is an IPP standard paper size.
void | set_size (double width, double height, Unit unit)
| Changes the dimensions of a size to width x height.
double | get_default_top_margin (Unit unit) const
| Gets the default top margin for the `Gtk::PaperSize`.
double | get_default_bottom_margin (Unit unit) const
| Gets the default bottom margin for the `Gtk::PaperSize`.
double | get_default_left_margin (Unit unit) const
| Gets the default left margin for the `Gtk::PaperSize`.
double | get_default_right_margin (Unit unit) const
| Gets the default right margin for the `Gtk::PaperSize`.
void | save_to_key_file (const Glib::RefPtr< Glib::KeyFile > & key_file, const Glib::ustring & group_name)
| This function adds the paper size from size to key_file.
void | save_to_key_file (const Glib::RefPtr< Glib::KeyFile > & key_file)
| This function adds the paper size to key_file in the first group.

## Static Public Member Functions
static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system.
static std::vector< PaperSize > | get_paper_sizes (bool include_custom=true)
| Creates a list of known paper sizes.
static Glib::ustring | get_default ()
| Returns the name of the default paper size, which depends on the current locale.

## Protected Attributes
GtkPaperSize * | gobject_

## Related Functions
(Note that these are not member functions.)
bool | operator== (const PaperSize & lhs, const PaperSize & rhs)
bool | operator!= (const PaperSize & lhs, const PaperSize & rhs)
void | swap (PaperSize & lhs, PaperSize & rhs) noexcept
Gtk::PaperSize | wrap (GtkPaperSize * object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Detailed Description

PaperSize handles paper sizes.

It uses the standard called "PWG 5101.1-2002 PWG: Standard for Media Standardized Names" to name the paper sizes (and to get the data for the page sizes). In addition to standard paper sizes, PaperSize allows to construct custom paper sizes with arbitrary dimensions.

The PaperSize object stores not only the dimensions (width and height) of a paper size and its name, it also provides default print margins.

Since gtkmm 2.10:

## Constructor & Destructor Documentation

## ◆ PaperSize() [1/8]

Gtk::PaperSize::PaperSize | ( |  | ) |

## ◆ PaperSize() [2/8]

Gtk::PaperSize::PaperSize | ( | GtkPaperSize * | gobject,
|  | bool | make_a_copy = `true`
| ) |  |
| explicit

## ◆ PaperSize() [3/8]

Gtk::PaperSize::PaperSize | ( | const PaperSize & | other | ) |

## ◆ PaperSize() [4/8]

Gtk::PaperSize::PaperSize | ( | PaperSize && | other | ) |
| noexcept

## ◆ ~PaperSize()

Gtk::PaperSize::~PaperSize | ( |  | ) |
| noexcept

## ◆ PaperSize() [5/8]

Gtk::PaperSize::PaperSize | ( | const Glib::ustring & | name | ) |
| explicit

## ◆ PaperSize() [6/8]

Gtk::PaperSize::PaperSize | ( | const Glib::ustring & | ppd_name,
|  | const Glib::ustring & | ppd_display_name,
|  | double | width,
|  | double | height
| ) |  |
| explicit

## ◆ PaperSize() [7/8]

Gtk::PaperSize::PaperSize | ( | const Glib::ustring & | name,
|  | const Glib::ustring & | display_name,
|  | double | width,
|  | double | height,
|  | Unit | unit
| ) |  |
| explicit

## ◆ PaperSize() [8/8]

Gtk::PaperSize::PaperSize | ( | const Glib::RefPtr< const Glib::KeyFile > & | key_file,
|  | const Glib::ustring & | group_name = `{}`
| ) |  |
| explicit

Reads a paper size from the group group_name in the key file key_file.

Parameters

  key_file | The Glib::KeyFile to retrieve the paper size from.
  group_name | The name of the group in the key file to read, or an empty string to read the first group.

Exceptions

  Gtk::PrintError,Glib::KeyFileError |

## Member Function Documentation

## ◆ equal()

bool Gtk::PaperSize::equal | ( | const PaperSize & | other | ) | const

## ◆ get_default()

static Glib::ustring Gtk::PaperSize::get_default | ( |  | ) |
| static

Returns the name of the default paper size, which depends on the current locale.

Returns
  The name of the default paper size. The string is owned by GTK and should not be modified.

## ◆ get_default_bottom_margin()

double Gtk::PaperSize::get_default_bottom_margin | ( | Unit | unit | ) | const

Gets the default bottom margin for the `Gtk::PaperSize`.

Parameters

  unit | The unit for the return value, not Gtk::Unit::NONE.

Returns
  The default bottom margin.

## ◆ get_default_left_margin()

double Gtk::PaperSize::get_default_left_margin | ( | Unit | unit | ) | const

Gets the default left margin for the `Gtk::PaperSize`.

Parameters

  unit | The unit for the return value, not Gtk::Unit::NONE.

Returns
  The default left margin.

## ◆ get_default_right_margin()

double Gtk::PaperSize::get_default_right_margin | ( | Unit | unit | ) | const

Gets the default right margin for the `Gtk::PaperSize`.

Parameters

  unit | The unit for the return value, not Gtk::Unit::NONE.

Returns
  The default right margin.

## ◆ get_default_top_margin()

double Gtk::PaperSize::get_default_top_margin | ( | Unit | unit | ) | const

Gets the default top margin for the `Gtk::PaperSize`.

Parameters

  unit | The unit for the return value, not Gtk::Unit::NONE.

Returns
  The default top margin.

## ◆ get_display_name()

Glib::ustring Gtk::PaperSize::get_display_name | ( |  | ) | const

Gets the human-readable name of the `Gtk::PaperSize`.

Returns
  The human-readable name of size.

## ◆ get_height()

double Gtk::PaperSize::get_height | ( | Unit | unit | ) | const

Gets the paper height of the `Gtk::PaperSize`, in units of unit.

Parameters

  unit | The unit for the return value, not Gtk::Unit::NONE.

Returns
  The paper height.

## ◆ get_name()

Glib::ustring Gtk::PaperSize::get_name | ( |  | ) | const

Gets the name of the `Gtk::PaperSize`.

Returns
  The name of size.

## ◆ get_paper_sizes()

static std::vector< PaperSize > Gtk::PaperSize::get_paper_sizes | ( | bool | include_custom = `true` | ) |
| static

Creates a list of known paper sizes.

Parameters

  include_custom | Whether to include custom paper sizes as defined in the page setup dialog.

Returns
  A newly allocated list of newly allocated `Gtk::PaperSize` objects.

## ◆ get_ppd_name()

Glib::ustring Gtk::PaperSize::get_ppd_name | ( |  | ) | const

Gets the PPD name of the `Gtk::PaperSize`, which may be `nullptr`.

Returns
  The PPD name of size.

## ◆ get_type()

static GType Gtk::PaperSize::get_type | ( |  | ) |
| static

Get the GType for this class, for use with the underlying GObject type system.

## ◆ get_width()

double Gtk::PaperSize::get_width | ( | Unit | unit | ) | const

Gets the paper width of the `Gtk::PaperSize`, in units of unit.

Parameters

  unit | The unit for the return value, not Gtk::Unit::NONE.

Returns
  The paper width.

## ◆ gobj() [1/2]

GtkPaperSize * Gtk::PaperSize::gobj | ( |  | ) |
| inline

Provides access to the underlying C instance.

## ◆ gobj() [2/2]

const GtkPaperSize * Gtk::PaperSize::gobj | ( |  | ) | const
| inline

Provides access to the underlying C instance.

## ◆ gobj_copy()

GtkPaperSize * Gtk::PaperSize::gobj_copy | ( |  | ) | const

Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.

## ◆ is_custom()

bool Gtk::PaperSize::is_custom | ( |  | ) | const

Returns `true` if size is not a standard paper size.

Returns
  Whether size is a custom paper size.

## ◆ is_ipp()

bool Gtk::PaperSize::is_ipp | ( |  | ) | const

Returns `true` if size is an IPP standard paper size.

Returns
  Whether size is not an IPP custom paper size.

## ◆ operator bool()

Gtk::PaperSize::operator bool | ( |  | ) | const
| explicit

Returns true if the PaperSize is a valid object.

For instance,

if(papersize)
do_something()

Since gtkmm 3.22:

## ◆ operator=() [1/2]

PaperSize & Gtk::PaperSize::operator= | ( | const PaperSize & | other | ) |

## ◆ operator=() [2/2]

PaperSize & Gtk::PaperSize::operator= | ( | PaperSize && | other | ) |
| noexcept

## ◆ save_to_key_file() [1/2]

void Gtk::PaperSize::save_to_key_file | ( | const Glib::RefPtr< Glib::KeyFile > & | key_file | ) |

This function adds the paper size to key_file in the first group.

Since gtkmm 2.12:

Parameters

  key_file | The Glib::KeyFile to save the paper size to.

## ◆ save_to_key_file() [2/2]

void Gtk::PaperSize::save_to_key_file | ( | const Glib::RefPtr< Glib::KeyFile > & | key_file,
|  | const Glib::ustring & | group_name
| ) |  |

This function adds the paper size from size to key_file.

Parameters

  key_file | The `Glib::KeyFile` to save the paper size to.
  group_name | The group to add the settings to in key_file.

## ◆ set_size()

void Gtk::PaperSize::set_size | ( | double | width,
|  | double | height,
|  | Unit | unit
| ) |  |

Changes the dimensions of a size to width x height.

Parameters

  width | The new width in units of unit.
  height | The new height in units of unit.
  unit | The unit for width and height.

## ◆ swap()

void Gtk::PaperSize::swap | ( | PaperSize & | other | ) |
| noexcept

## Friends And Related Function Documentation

## ◆ operator!=()

bool operator!= | ( | const PaperSize & | lhs,
|  | const PaperSize & | rhs
| ) |  |
| related

## ◆ operator==()

bool operator== | ( | const PaperSize & | lhs,
|  | const PaperSize & | rhs
| ) |  |
| related

## ◆ swap()

void swap | ( | PaperSize & | lhs,
|  | PaperSize & | rhs
| ) |  |
| related

Parameters

  lhs | The left-hand side
  rhs | The right-hand side

## ◆ wrap()

Gtk::PaperSize wrap | ( | GtkPaperSize * | object,
|  | bool | take_copy = `false`
| ) |  |
| related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.

## Member Data Documentation

## ◆ gobject_

GtkPaperSize* Gtk::PaperSize::gobject_
| protected