IN: images.backend
SINGLETONS: BGR RGB BGRA RGBA ABGR ARGB RGBX XRGB BGRX XBGR ;
-! RGBA
TUPLE: image dim component-order bitmap ;
M: image normalize-scan-line-order ;
M: bitmap-image normalize-scan-line-order
- dup
- [ bitmap>> ] [ dim>> first 4 * ] bi <sliced-groups> reverse concat
- >>bitmap ;
+ dup dim>> '[
+ _ first 4 * <sliced-groups> reverse concat
+ ] change-bitmap ;
: normalize-image ( image -- image )
normalize-component-order
: image-window ( path -- gadget )
[ <image> <image-gadget> dup ] [ open-window ] bi ;
-GENERIC: image. ( image -- )
+GENERIC: image. ( object -- )
-M: string image. ( image -- ) <image> <image-gadget> gadget. ;
+: default-image. ( path -- )
+ <image-gadget> gadget. ;
-M: pathname image. ( image -- ) <image> <image-gadget> gadget. ;
+M: string image. ( image -- ) <image> default-image. ;
-M: image image. ( image -- ) <image-gadget> gadget. ;
+M: pathname image. ( image -- ) <image> default-image. ;
+
+M: image image. ( image -- ) default-image. ;