@@ -641,12 +641,6 @@ def stamp(self, bitmap=None, palette=None):
641641 turtle position. Return a stamp_id for that stamp, which can be used to
642642 delete it by calling clearstamp(stamp_id).
643643 """
644- # The restriction on max_size in displayio.Group has been removed.
645- # For now, leave this with a limit of 6 so as not to break any
646- # deployed code.
647- if len (self ._fg_addon_group ) >= 6 :
648- print ("Addon group full" )
649- return - 1
650644 s_id = len (self ._stamps )
651645 if self ._turtle_pic is None :
652646 # easy.
@@ -660,11 +654,7 @@ def stamp(self, bitmap=None, palette=None):
660654 # odb bitmap
661655 new_stamp = displayio .TileGrid (
662656 self ._turtle_odb ,
663- pixel_shader = getattr (
664- self ._turtle_odb , "pixel_shader" , displayio .ColorConverter ()
665- ),
666- # TODO: Once CP6 is no longer supported, replace the above line with below
667- # pixel_shader=self._turtle_odb.pixel_shader,
657+ pixel_shader = self ._turtle_odb .pixel_shader ,
668658 x = int (self ._x - self ._turtle_odb .width // 2 ),
669659 y = int (self ._y - self ._turtle_odb .height // 2 ),
670660 )
@@ -701,8 +691,7 @@ def clearstamp(self, stampid):
701691 if isinstance (self ._stamps [stampid ], tuple ):
702692 self ._fg_addon_group .remove (self ._stamps [stampid ][0 ])
703693 self ._turtle_odb_use -= 1
704- if self ._turtle_odb_use == 0 :
705- self ._stamps [stampid ][1 ].close ()
694+
706695 else :
707696 self ._fg_addon_group .remove (self ._stamps [stampid ])
708697 self ._stamps [stampid ] = None
@@ -970,17 +959,14 @@ def bgpic(self, picname=None):
970959 if self ._bg_pic is not None :
971960 self ._bg_addon_group .remove (self ._odb_tilegrid )
972961 self ._odb_tilegrid = None
973- self ._bg_pic .close ()
974962 self ._bg_pic = None
975963 self ._bg_pic_filename = ""
976964 else :
977- with open (picname , "rb" ) as self . _bg_pic :
978- odb = displayio . OnDiskBitmap ( self . _bg_pic )
965+ odb = displayio . OnDiskBitmap (picname )
966+
979967 self ._odb_tilegrid = displayio .TileGrid (
980968 odb ,
981- pixel_shader = getattr (odb , "pixel_shader" , displayio .ColorConverter ()),
982- # TODO: Once CP6 is no longer supported, replace the above line with below
983- # pixel_shader=odb.pixel_shader,
969+ pixel_shader = odb .pixel_shader ,
984970 )
985971 self ._bg_addon_group .append (self ._odb_tilegrid )
986972 self ._bg_pic_filename = picname
@@ -1069,8 +1055,6 @@ def changeturtle(self, source=None, dimensions=(12, 12)):
10691055 self ._turtle_odb_use -= 1
10701056 self ._turtle_odb = None
10711057 if self ._turtle_odb_file is not None :
1072- if self ._turtle_odb_use == 0 :
1073- self ._turtle_odb_file .close ()
10741058 self ._turtle_odb_file = None
10751059 self ._turtle_pic = None
10761060 self ._drawturtle ()
@@ -1083,17 +1067,13 @@ def changeturtle(self, source=None, dimensions=(12, 12)):
10831067 self ._turtle_alt_sprite = None
10841068 self ._turtle_odb = None
10851069 if not isinstance (self ._turtle_pic , tuple ):
1086- self ._turtle_odb_file .close ()
10871070 self ._turtle_odb_file = None
10881071 self ._turtle_odb_use -= 1
10891072 self ._turtle_pic = None
1090- self ._turtle_odb_file = open ( # pylint: disable=consider-using-with
1091- source , "rb"
1092- )
1073+
10931074 try :
1094- self ._turtle_odb = displayio .OnDiskBitmap (self . _turtle_odb_file )
1075+ self ._turtle_odb = displayio .OnDiskBitmap (source )
10951076 except :
1096- self ._turtle_odb_file .close ()
10971077 self ._turtle_odb_file = None
10981078 self ._turtle_pic = None
10991079 if visible :
@@ -1103,11 +1083,7 @@ def changeturtle(self, source=None, dimensions=(12, 12)):
11031083 self ._turtle_pic = True
11041084 self ._turtle_alt_sprite = displayio .TileGrid (
11051085 self ._turtle_odb ,
1106- pixel_shader = getattr (
1107- self ._turtle_odb , "pixel_shader" , displayio .ColorConverter ()
1108- ),
1109- # TODO: Once CP6 is no longer supported, replace the above line with below
1110- # pixel_shader=self._turtle_odb.pixel_shader,
1086+ pixel_shader = self ._turtle_odb .pixel_shader ,
11111087 )
11121088
11131089 if self ._turtle_group :
@@ -1119,8 +1095,6 @@ def changeturtle(self, source=None, dimensions=(12, 12)):
11191095 if self ._turtle_pic is not None :
11201096 if self ._turtle_odb_file is not None :
11211097 self ._turtle_odb_use -= 1
1122- if self ._turtle_odb_use == 0 :
1123- self ._turtle_odb_file .close ()
11241098 self ._turtle_pic = dimensions
11251099 self ._turtle_alt_sprite = source
11261100 if self ._turtle_group :
0 commit comments