From 606cd60c9d8bf5da8cc676e6d6aca6107cb4a498 Mon Sep 17 00:00:00 2001 From: foamyguy Date: Mon, 9 Nov 2020 11:43:24 -0600 Subject: [PATCH 1/5] save color even if text doesn't exist yet for index --- adafruit_matrixportal/matrixportal.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adafruit_matrixportal/matrixportal.py b/adafruit_matrixportal/matrixportal.py index 9daa217..1c6ea98 100755 --- a/adafruit_matrixportal/matrixportal.py +++ b/adafruit_matrixportal/matrixportal.py @@ -254,9 +254,9 @@ def set_text_color(self, color, index=0): :param index: Defaults to 0. """ + self._text_color[index] = color if self._text[index]: color = self.html_color_convert(color) - self._text_color[index] = color self._text[index].color = color def set_text(self, val, index=0): From 18db573fd5469f880b07443629eaf59badb38130 Mon Sep 17 00:00:00 2001 From: foamyguy Date: Mon, 9 Nov 2020 15:04:41 -0600 Subject: [PATCH 2/5] undo saving color if text not exist yet. raise error telling user the order to call the functions. --- adafruit_matrixportal/matrixportal.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/adafruit_matrixportal/matrixportal.py b/adafruit_matrixportal/matrixportal.py index 1c6ea98..2e9c0e5 100755 --- a/adafruit_matrixportal/matrixportal.py +++ b/adafruit_matrixportal/matrixportal.py @@ -254,10 +254,12 @@ def set_text_color(self, color, index=0): :param index: Defaults to 0. """ - self._text_color[index] = color if self._text[index]: color = self.html_color_convert(color) + self._text_color[index] = color self._text[index].color = color + else: + raise IndexError(f"index {index} is out of bounds. Please call add_text() and set_text() first.") def set_text(self, val, index=0): """Display text, with indexing into our list of text boxes. From 1a3f81eaa055a17a6c6a9a87bc847e0339eb2217 Mon Sep 17 00:00:00 2001 From: foamyguy Date: Mon, 9 Nov 2020 15:11:53 -0600 Subject: [PATCH 3/5] black format --- adafruit_matrixportal/matrixportal.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/adafruit_matrixportal/matrixportal.py b/adafruit_matrixportal/matrixportal.py index 2e9c0e5..21dab4d 100755 --- a/adafruit_matrixportal/matrixportal.py +++ b/adafruit_matrixportal/matrixportal.py @@ -259,7 +259,9 @@ def set_text_color(self, color, index=0): self._text_color[index] = color self._text[index].color = color else: - raise IndexError(f"index {index} is out of bounds. Please call add_text() and set_text() first.") + raise IndexError( + f"index {index} is out of bounds. Please call add_text() and set_text() first." + ) def set_text(self, val, index=0): """Display text, with indexing into our list of text boxes. From 51d5747741d5bb555c479dbaad2efb74512bfaf5 Mon Sep 17 00:00:00 2001 From: foamyguy Date: Mon, 9 Nov 2020 15:16:43 -0600 Subject: [PATCH 4/5] dont use fstring --- adafruit_matrixportal/matrixportal.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/adafruit_matrixportal/matrixportal.py b/adafruit_matrixportal/matrixportal.py index 21dab4d..28714d0 100755 --- a/adafruit_matrixportal/matrixportal.py +++ b/adafruit_matrixportal/matrixportal.py @@ -260,7 +260,9 @@ def set_text_color(self, color, index=0): self._text[index].color = color else: raise IndexError( - f"index {index} is out of bounds. Please call add_text() and set_text() first." + "index {} is out of bounds. Please call add_text() and set_text() first.".format( + index + ) ) def set_text(self, val, index=0): From 431b933bddb2f2f118099d7f9dc04e16ecd935a0 Mon Sep 17 00:00:00 2001 From: foamyguy Date: Tue, 10 Nov 2020 15:06:36 -0600 Subject: [PATCH 5/5] change set_text_color --- adafruit_matrixportal/matrixportal.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/adafruit_matrixportal/matrixportal.py b/adafruit_matrixportal/matrixportal.py index 28714d0..8d357f7 100755 --- a/adafruit_matrixportal/matrixportal.py +++ b/adafruit_matrixportal/matrixportal.py @@ -254,10 +254,10 @@ def set_text_color(self, color, index=0): :param index: Defaults to 0. """ - if self._text[index]: - color = self.html_color_convert(color) - self._text_color[index] = color - self._text[index].color = color + if 0 <= index < len(self._text_color): + self._text_color[index] = self.html_color_convert(color) + if self._text[index] is not None: + self._text[index].color = self._text_color[index] else: raise IndexError( "index {} is out of bounds. Please call add_text() and set_text() first.".format(