diff options
| author | Pietro Gagliardi <[email protected]> | 2018-08-26 09:55:07 -0400 |
|---|---|---|
| committer | Pietro Gagliardi <[email protected]> | 2018-08-26 09:55:07 -0400 |
| commit | 62ac2527732a01dfa6bd2c9523215c0ba3816641 (patch) | |
| tree | 84244a69e048f79e4d9f134c121f4cf581200986 /image.go | |
| parent | a5a00c644c08a6e0f52740c3f2a280977929a285 (diff) | |
Moved all the Go files out of the way again, this time so we can migrate them to more proper cgo usage.
Diffstat (limited to 'image.go')
| -rw-r--r-- | image.go | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/image.go b/image.go deleted file mode 100644 index 9b791fe..0000000 --- a/image.go +++ /dev/null @@ -1,58 +0,0 @@ -// 21 august 2018 - -package ui - -import ( - "image" -) - -// #include <stdlib.h> -// #include "ui.h" -import "C" - -// Image stores an image for display on screen. -// -// Images are built from one or more representations, each with the -// same aspect ratio but a different pixel size. Package ui -// automatically selects the most appropriate representation for -// drawing the image when it comes time to draw the image; what -// this means depends on the pixel density of the target context. -// Therefore, one can use Image to draw higher-detailed images on -// higher-density displays. The typical use cases are either: -// -// - have just a single representation, at which point all screens -// use the same image, and thus uiImage acts like a simple -// bitmap image, or -// - have two images, one at normal resolution and one at 2x -// resolution; this matches the current expectations of some -// desktop systems at the time of writing (mid-2018) -// -// Image allocates OS resources; you must explicitly free an Image -// when you are finished with it. -type Image struct { - i *C.uiImage -} - -// NewImage creates a new Image with the given width and -// height. This width and height should be the size in points of the -// image in the device-independent case; typically this is the 1x size. -func NewImage(width, height float64) *Image { - return &Image{ - i: C.uiNewImage(C.double(width), C.double(height)), - } -} - -// Free frees the Image. -func (i *Image) Free() { - C.uiFreeImage(i.i) -} - -// Append adds the given image as a representation of the Image. -func (i *Image) Append(img *image.NRGBA) { - cpix := C.CBytes(img.Pix) - defer C.free(cpix) - C.uiImageAppend(i.i, cpix, - C.int(img.Rect.Dx()), - C.int(img.Rect.Dy()), - C.int(img.Stride)) -} |
