Oops, fixed CairoGraphicsContext>>width:height:
Must test whether a Cairo context has been created. If not,
we're done.
"{ Package: 'stx:goodies/libcairo' }"
"{ NameSpace: Cairo }"
SharedPool subclass:#Format
instanceVariableNames:''
classVariableNames:'CAIRO_FORMAT_INVALID CAIRO_FORMAT_ARGB32 CAIRO_FORMAT_RGB24
CAIRO_FORMAT_A8 CAIRO_FORMAT_A1 CAIRO_FORMAT_RGB16_565
CAIRO_FORMAT_RGB30'
poolDictionaries:''
category:'Cairo-Constants'
!
!Format class methodsFor:'documentation'!
documentation
"
Cairo::Format is used to identify the memory format of image data.
New entries may be added in future versions.
Values
CAIRO_FORMAT_INVALID - no such format exists or is supported.
CAIRO_FORMAT_ARGB32 - each pixel is a 32-bit quantity, with alpha in
the upper 8 bits, then red, then green, then blue.
The 32-bit quantities are stored native-endian.
Pre-multiplied alpha is used. (That is, 50% transparent
red is 0x80800000, not 0x80ff0000.) (Since 1.0)
CAIRO_FORMAT_RGB24 - each pixel is a 32-bit quantity, with the upper 8 bits
unused. Red, Green, and Blue are stored in the remaining
24 bits in that order. (Since 1.0)
CAIRO_FORMAT_A8 - each pixel is a 8-bit quantity holding an alpha value. (Since 1.0)
CAIRO_FORMAT_A1 - each pixel is a 1-bit quantity holding an alpha value. Pixels are
packed together into 32-bit quantities. The ordering of the bits
matches the endianess of the platform. On a big-endian machine, the
first pixel is in the uppermost bit, on a little-endian machine the
first pixel is in the least-significant bit. (Since 1.0)
CAIRO_FORMAT_RGB16_565 - each pixel is a 16-bit quantity with red in the upper 5 bits, then green
in the middle 6 bits, and blue in the lower 5 bits. (Since 1.2)
CAIRO_FORMAT_RGB30 - like RGB24 but with 10bpc. (Since 1.12)
[author:]
Jan Vrany <jan.vrany@fit.cvut.cz>
[instance variables:]
[class variables:]
[see also:]
"
! !
!Format class methodsFor:'initialization'!
initialize
CAIRO_FORMAT_INVALID := -1.
CAIRO_FORMAT_ARGB32 := 0.
CAIRO_FORMAT_RGB24 := 1.
CAIRO_FORMAT_A8 := 2.
CAIRO_FORMAT_A1 := 3.
CAIRO_FORMAT_RGB16_565 := 4.
CAIRO_FORMAT_RGB30 := 5.
! !
!Format class methodsFor:'constants'!
CAIRO_FORMAT_A1
^CAIRO_FORMAT_A1
!
CAIRO_FORMAT_A8
^CAIRO_FORMAT_A8
!
CAIRO_FORMAT_ARGB32
^CAIRO_FORMAT_ARGB32
!
CAIRO_FORMAT_INVALID
^CAIRO_FORMAT_INVALID
!
CAIRO_FORMAT_RGB16_565
^CAIRO_FORMAT_RGB16_565
!
CAIRO_FORMAT_RGB24
^CAIRO_FORMAT_RGB24
!
CAIRO_FORMAT_RGB30
^CAIRO_FORMAT_RGB30
! !
Format initialize!