summaryrefslogtreecommitdiff
path: root/vendor/github.com/gotk3/gotk3/gtk/print_since_3_16.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/gotk3/gotk3/gtk/print_since_3_16.go')
-rw-r--r--vendor/github.com/gotk3/gotk3/gtk/print_since_3_16.go34
1 files changed, 34 insertions, 0 deletions
diff --git a/vendor/github.com/gotk3/gotk3/gtk/print_since_3_16.go b/vendor/github.com/gotk3/gotk3/gtk/print_since_3_16.go
new file mode 100644
index 0000000..486026d
--- /dev/null
+++ b/vendor/github.com/gotk3/gotk3/gtk/print_since_3_16.go
@@ -0,0 +1,34 @@
+// +build !gtk_3_6,!gtk_3_8,!gtk_3_10,!gtk_3_12,!gtk_3_14
+
+// See: https://developer.gnome.org/gtk3/3.16/api-index-3-16.html
+
+package gtk
+
+// #include <gtk/gtk.h>
+// #include "gtk.go.h"
+import "C"
+import (
+ "runtime"
+ "unsafe"
+)
+
+// PaperSizeNewFromIpp is a wrapper around gtk_paper_size_new_from_ipp().
+func PaperSizeNewFromIPP(name string, width, height float64) (*PaperSize, error) {
+ cstr := C.CString(name)
+ defer C.free(unsafe.Pointer(cstr))
+
+ c := C.gtk_paper_size_new_from_ipp((*C.gchar)(cstr), C.gdouble(width), C.gdouble(height))
+ if c == nil {
+ return nil, nilPtrErr
+ }
+
+ t := &PaperSize{c}
+ runtime.SetFinalizer(t, (*PaperSize).free)
+ return t, nil
+}
+
+// IsIPP() is a wrapper around gtk_paper_size_is_ipp().
+func (ps *PaperSize) IsIPP() bool {
+ c := C.gtk_paper_size_is_ipp(ps.native())
+ return gobool(c)
+}