static VALUE rg_set_paper_height(VALUE self, VALUE paper_height, VALUE unit) { gtk_print_settings_set_paper_height(_SELF(self), NUM2DBL(paper_height), RVAL2UNIT(unit)); return self; }
static VALUE rg_initialize(int argc, VALUE *argv, VALUE self) { GtkPaperSize *size; if (argc <= 1) { VALUE name; rb_scan_args(argc, argv, "01", &name); size = gtk_paper_size_new(RVAL2CSTR_ACCEPT_NIL(name)); } else if (argc == 4) { size = gtk_paper_size_new_from_ppd(RVAL2CSTR(argv[0]), RVAL2CSTR(argv[1]), NUM2DBL(argv[2]), NUM2DBL(argv[3])); } else if (argc == 5) { size = gtk_paper_size_new_custom(RVAL2CSTR(argv[0]), RVAL2CSTR(argv[1]), NUM2DBL(argv[2]), NUM2DBL(argv[3]), RVAL2UNIT(argv[4])); } else { rb_raise(rb_eArgError, "wrong number of arguments (%d for 0, 1, 4 or 5)", argc); } G_INITIALIZE(self, size); return Qnil; }
/* Only for custom sizes: */ static VALUE rg_set_size(VALUE self, VALUE width, VALUE height, VALUE unit) { gtk_paper_size_set_size(_SELF(self), NUM2DBL(width), NUM2DBL(height), RVAL2UNIT(unit)); return self; }
static VALUE rg_set_paper_width(VALUE self, VALUE paper_width, VALUE unit) { gtk_print_settings_set_paper_width(_SELF(self), NUM2DBL(paper_width), RVAL2UNIT(unit)); return self; }
static VALUE ps_set_length(VALUE self, VALUE key, VALUE value, VALUE unit) { gtk_print_settings_set_length(_SELF(self), RVAL2CSTR(key), NUM2DBL(value), RVAL2UNIT(unit)); return self; }
static VALUE rg_get_length(VALUE self, VALUE key, VALUE unit) { return rb_float_new(gtk_print_settings_get_length(_SELF(self), RVAL2CSTR(key), RVAL2UNIT(unit))); }
static VALUE rg_get_height(VALUE self, VALUE unit) { return rb_float_new(gtk_paper_size_get_height(_SELF(self), RVAL2UNIT(unit))); }
static VALUE rg_get_default_right_margin(VALUE self, VALUE unit) { return rb_float_new(gtk_paper_size_get_default_right_margin(_SELF(self), RVAL2UNIT(unit))); }
static VALUE rg_paper_height(VALUE self, VALUE unit) { return rb_float_new(gtk_print_settings_get_paper_height(_SELF(self), RVAL2UNIT(unit))); }
static VALUE ps_get_width(VALUE self, VALUE unit) { return rb_float_new(gtk_paper_size_get_width(_SELF(self), RVAL2UNIT(unit))); }