@@ -379,6 +379,37 @@ const mp_obj_property_t displayio_tilegrid_pixel_shader_obj = {
379
379
MP_ROM_NONE },
380
380
};
381
381
382
+ //| bitmap: Union[Bitmap,OnDiskBitmap,Shape]
383
+ //| """The bitmap of the tilegrid."""
384
+ //|
385
+ STATIC mp_obj_t displayio_tilegrid_obj_get_bitmap (mp_obj_t self_in ) {
386
+ displayio_tilegrid_t * self = native_tilegrid (self_in );
387
+ return common_hal_displayio_tilegrid_get_bitmap (self );
388
+ }
389
+ MP_DEFINE_CONST_FUN_OBJ_1 (displayio_tilegrid_get_bitmap_obj , displayio_tilegrid_obj_get_bitmap );
390
+
391
+ STATIC mp_obj_t displayio_tilegrid_obj_set_bitmap (mp_obj_t self_in , mp_obj_t bitmap ) {
392
+ displayio_tilegrid_t * self = native_tilegrid (self_in );
393
+ if (!mp_obj_is_type (bitmap , & displayio_bitmap_type ) &&
394
+ !mp_obj_is_type (bitmap , & displayio_ondiskbitmap_type ) &&
395
+ !mp_obj_is_type (bitmap , & displayio_shape_type )) {
396
+
397
+ mp_raise_TypeError (translate ("bitmap must be displayio.Bitmap, displayio.Shape, or displayio.OnDiskBitmap" ));
398
+ }
399
+
400
+ common_hal_displayio_tilegrid_set_bitmap (self , bitmap );
401
+
402
+ return mp_const_none ;
403
+ }
404
+ MP_DEFINE_CONST_FUN_OBJ_2 (displayio_tilegrid_set_bitmap_obj , displayio_tilegrid_obj_set_bitmap );
405
+
406
+ const mp_obj_property_t displayio_tilegrid_bitmap_obj = {
407
+ .base .type = & mp_type_property ,
408
+ .proxy = {(mp_obj_t )& displayio_tilegrid_get_bitmap_obj ,
409
+ (mp_obj_t )& displayio_tilegrid_set_bitmap_obj ,
410
+ MP_ROM_NONE },
411
+ };
412
+
382
413
//| def __getitem__(self, index: Union[Tuple[int, int], int]) -> int:
383
414
//| """Returns the tile index at the given index. The index can either be an x,y tuple or an int equal
384
415
//| to ``y * width + x``.
@@ -454,7 +485,8 @@ STATIC const mp_rom_map_elem_t displayio_tilegrid_locals_dict_table[] = {
454
485
{ MP_ROM_QSTR (MP_QSTR_flip_x ), MP_ROM_PTR (& displayio_tilegrid_flip_x_obj ) },
455
486
{ MP_ROM_QSTR (MP_QSTR_flip_y ), MP_ROM_PTR (& displayio_tilegrid_flip_y_obj ) },
456
487
{ MP_ROM_QSTR (MP_QSTR_transpose_xy ), MP_ROM_PTR (& displayio_tilegrid_transpose_xy_obj ) },
457
- { MP_ROM_QSTR (MP_QSTR_pixel_shader ), MP_ROM_PTR (& displayio_tilegrid_pixel_shader_obj ) },
488
+ { MP_ROM_QSTR (MP_QSTR_pixel_shader ), MP_ROM_PTR (& displayio_tilegrid_pixel_shader_obj ) },
489
+ { MP_ROM_QSTR (MP_QSTR_bitmap ), MP_ROM_PTR (& displayio_tilegrid_bitmap_obj ) },
458
490
};
459
491
STATIC MP_DEFINE_CONST_DICT (displayio_tilegrid_locals_dict , displayio_tilegrid_locals_dict_table );
460
492
0 commit comments