]> git.armaanb.net Git - lightcards.git/commitdiff
Move card flipping methods from Status to Card
authorArmaan Bhojwani <me@armaanb.net>
Tue, 9 Feb 2021 02:10:03 +0000 (21:10 -0500)
committerArmaan Bhojwani <me@armaanb.net>
Tue, 9 Feb 2021 02:10:03 +0000 (21:10 -0500)
lightcards/deck.py
lightcards/display.py

index eac8b69c9de59bf5ec4b3ace6d651d3a16db230f..2a612027ad00d5d7c61fc3b02d9c7d22e14e4b6d 100644 (file)
@@ -8,6 +8,7 @@ class Card(list):
     def __init__(self, inp):
         super().__init__(inp)
         self.starred = False
+        self.side = 0
 
     def unStar(self):
         self.starred = False
@@ -30,13 +31,24 @@ class Card(list):
         else:
             return "Not starred"
 
+    def setSide(self, inp):
+        self.side = inp
+
+    def getSide(self):
+        return self.side
+
+    def flip(self):
+        if self.side == 0:
+            self.side = 1
+        else:
+            self.side = 0
+
 
 class Status:
     """The status class keeps track of where in the deck the user is"""
 
     def __init__(self):
         self.index = 0
-        self.side = 0
 
     def forward(self, stack):
         if not self.index == len(stack):
@@ -46,20 +58,8 @@ class Status:
         if not self.index < 1:
             self.index -= 1
 
-    def flip(self):
-        if self.side == 0:
-            self.side = 1
-        else:
-            self.side = 0
-
-    def setSide(self, inp):
-        self.side = inp
-
     def setIdx(self, inp):
         self.index = inp
 
-    def getSide(self):
-        return self.side
-
     def getIdx(self):
         return self.index
index ecdc0704ad99a9f33820f6c00bdfbcabe17f0389..76e312d9a3e3585fb8cfc3f76657746e1c6957ba 100644 (file)
@@ -83,8 +83,8 @@ class Display:
             + f"[{percent}% ("
             + str(self.obj.getIdx() + 1).zfill(len(str(len(self.stack))))
             + f"/{str(len(self.stack))})] ["
-            + f"{self.headers[self.obj.getSide()]} ("
-            + f"{str(self.obj.getSide() + 1)})] "
+            + f"{self.headers[self.stack[self.obj.getIdx()].getSide()]} ("
+            + f"{str(self.stack[self.obj.getIdx()].getSide()) + str(1)})] "
         )
 
         # Put it all togethor
@@ -241,13 +241,17 @@ class Display:
             num_done = str(self.obj.getIdx() + 1).zfill(
                 len(str(len(self.stack)))
             )
-            if self.obj.getSide() == 0:
-                top = num_done + " | " + self.headers[self.obj.getSide()]
+            if self.stack[self.obj.getIdx()].getSide() == 0:
+                top = (
+                    num_done
+                    + " | "
+                    + self.headers[self.stack[self.obj.getIdx()].getSide()]
+                )
             else:
                 top = (
                     num_done
                     + " | "
-                    + self.headers[self.obj.getSide()]
+                    + self.headers[self.stack[self.obj.getIdx()].getSide()]
                     + ' | "'
                     + str(self.stack[self.obj.getIdx()][0])
                     + '"'
@@ -274,7 +278,9 @@ class Display:
                 2,
                 0,
                 textwrap.fill(
-                    self.stack[self.obj.getIdx()][self.obj.getSide()],
+                    self.stack[self.obj.getIdx()][
+                        self.stack[self.obj.getIdx()].getSide()
+                    ],
                     width=self.wrap_width(),
                 ),
             )
@@ -342,25 +348,25 @@ class Display:
                 self.leave()
             elif key in ["h", "KEY_LEFT"]:
                 self.obj.back()
-                self.obj.setSide(0)
+                self.stack[self.obj.getIdx()].setSide(0)
                 self.disp_card()
             elif key in ["l", "KEY_RIGHT"]:
                 self.obj.forward(self.stack)
-                self.obj.setSide(0)
+                self.stack[self.obj.getIdx()].setSide(0)
                 self.disp_card()
             elif key in ["j", "k", "KEY_UP", "KEY_DOWN"]:
-                self.obj.flip()
+                self.stack[self.obj.getIdx()].flip()
                 self.disp_card()
             elif key in ["i", "/"]:
                 self.stack[self.obj.getIdx()].toggleStar()
                 self.disp_card()
             elif key in ["0", "^", "KEY_HOME"]:
                 self.obj.setIdx(0)
-                self.obj.setSide(0)
+                self.stack[self.obj.getIdx()].setSide(0)
                 self.disp_card()
             elif key in ["$", "KEY_END"]:
                 self.obj.setIdx(len(self.stack) - 1)
-                self.obj.setSide(0)
+                self.stack[self.obj.getIdx()].setSide(0)
                 self.disp_card()
             elif key in ["H", "?"]:
                 self.disp_help()