]> git.armaanb.net Git - lightcards.git/blobdiff - lightcards/display.py
Clean up lightcards.py
[lightcards.git] / lightcards / display.py
old mode 100755 (executable)
new mode 100644 (file)
index 7e09cdc..39e67ef
@@ -35,31 +35,27 @@ class Display():
             percent = "100"
         else:
             percent = str(round(self.obj.getIdx() /
-                                (len(self.stack) - 1) * 100)).zfill(3)
+                                len(self.stack) * 100)).zfill(3)
 
         # Print yellow if starred
-        self.win.addstr(mlines - 1, 0, "[", curses.color_pair(1))
         if self.stack[self.obj.getIdx()].getStar():
-            self.win.addstr(self.stack[self.obj.getIdx()].printStar(),
-                            curses.color_pair(3))
+            star_color = curses.color_pair(3)
         else:
-            self.win.addstr(self.stack[self.obj.getIdx()].printStar(),
-                            curses.color_pair(1))
-
-        # Put all the info together
-        self.win.addstr("] [" +
-                        percent +
-                        "% (" +
-                        str(self.obj.getIdx() +
-                            1).zfill(len(str(len(self.stack)))) +
-                        "/" +
-                        str(len(self.stack)) +
-                        ")]" +
-                        " [" +
-                        self.headers[self.obj.getSide()] +
-                        " (" +
-                        str(self.obj.getSide() + 1) +
-                        ")]", curses.color_pair(1))
+            star_color = curses.color_pair(1)
+
+        # Create bar component
+        bar_start = "["
+        bar_middle = self.stack[self.obj.getIdx()].printStar()
+        bar_end= "] [" + percent + "% (" + \
+            str(self.obj.getIdx() + 1).zfill(len(str(len(self.stack)))) + \
+            "/" + str(len(self.stack)) + ")] [" + \
+            self.headers[self.obj.getSide()] + " (" + \
+            str(self.obj.getSide() + 1) + ")]"
+
+        # Put it all togethor
+        self.win.addstr(mlines - 1, 0, bar_start, curses.color_pair(1))
+        self.win.addstr(bar_middle, star_color)
+        self.win.insstr(bar_end, curses.color_pair(1))
 
     def menu_print(self, string, err=False):
         self.win.clear()
@@ -122,6 +118,9 @@ class Display():
                     self.menu_print("Stars only!")
                 else:
                     self.menu_print("ERR: None are starred!", err=True)
+            elif key in ["h", "KEY_LEFT"]:
+                self.obj.setIdx(len(self.stack) - 1)
+                self.get_key()
             elif key == "r":
                 self.get_key()
 
@@ -209,11 +208,11 @@ class Display():
             key = self.win.getkey()
             if key == "q":
                 sys.exit(0)
-            elif key in ["l", "KEY_LEFT"]:
+            elif key in ["l", "KEY_RIGHT"]:
                 self.obj.forward(self.stack)
                 self.obj.setSide(0)
                 self.disp_card()
-            elif key in ["h", "KEY_RIGHT"]:
+            elif key in ["h", "KEY_LEFT"]:
                 self.obj.back()
                 self.obj.setSide(0)
                 self.disp_card()