1package cairo 2 3// #include <stdlib.h> 4// #include <cairo.h> 5// #include <cairo-gobject.h> 6import "C" 7import ( 8 "unsafe" 9) 10 11// Operator is a representation of Cairo's cairo_operator_t. 12type Operator int 13 14const ( 15 OPERATOR_CLEAR Operator = C.CAIRO_OPERATOR_CLEAR 16 OPERATOR_SOURCE Operator = C.CAIRO_OPERATOR_SOURCE 17 OPERATOR_OVER Operator = C.CAIRO_OPERATOR_OVER 18 OPERATOR_IN Operator = C.CAIRO_OPERATOR_IN 19 OPERATOR_OUT Operator = C.CAIRO_OPERATOR_OUT 20 OPERATOR_ATOP Operator = C.CAIRO_OPERATOR_ATOP 21 OPERATOR_DEST Operator = C.CAIRO_OPERATOR_DEST 22 OPERATOR_DEST_OVER Operator = C.CAIRO_OPERATOR_DEST_OVER 23 OPERATOR_DEST_IN Operator = C.CAIRO_OPERATOR_DEST_IN 24 OPERATOR_DEST_OUT Operator = C.CAIRO_OPERATOR_DEST_OUT 25 OPERATOR_DEST_ATOP Operator = C.CAIRO_OPERATOR_DEST_ATOP 26 OPERATOR_XOR Operator = C.CAIRO_OPERATOR_XOR 27 OPERATOR_ADD Operator = C.CAIRO_OPERATOR_ADD 28 OPERATOR_SATURATE Operator = C.CAIRO_OPERATOR_SATURATE 29 OPERATOR_MULTIPLY Operator = C.CAIRO_OPERATOR_MULTIPLY 30 OPERATOR_SCREEN Operator = C.CAIRO_OPERATOR_SCREEN 31 OPERATOR_OVERLAY Operator = C.CAIRO_OPERATOR_OVERLAY 32 OPERATOR_DARKEN Operator = C.CAIRO_OPERATOR_DARKEN 33 OPERATOR_LIGHTEN Operator = C.CAIRO_OPERATOR_LIGHTEN 34 OPERATOR_COLOR_DODGE Operator = C.CAIRO_OPERATOR_COLOR_DODGE 35 OPERATOR_COLOR_BURN Operator = C.CAIRO_OPERATOR_COLOR_BURN 36 OPERATOR_HARD_LIGHT Operator = C.CAIRO_OPERATOR_HARD_LIGHT 37 OPERATOR_SOFT_LIGHT Operator = C.CAIRO_OPERATOR_SOFT_LIGHT 38 OPERATOR_DIFFERENCE Operator = C.CAIRO_OPERATOR_DIFFERENCE 39 OPERATOR_EXCLUSION Operator = C.CAIRO_OPERATOR_EXCLUSION 40 OPERATOR_HSL_HUE Operator = C.CAIRO_OPERATOR_HSL_HUE 41 OPERATOR_HSL_SATURATION Operator = C.CAIRO_OPERATOR_HSL_SATURATION 42 OPERATOR_HSL_COLOR Operator = C.CAIRO_OPERATOR_HSL_COLOR 43 OPERATOR_HSL_LUMINOSITY Operator = C.CAIRO_OPERATOR_HSL_LUMINOSITY 44) 45 46func marshalOperator(p uintptr) (interface{}, error) { 47 c := C.g_value_get_enum((*C.GValue)(unsafe.Pointer(p))) 48 return Operator(c), nil 49} 50