diff --git a/beeptimes.py b/beeptimes.py new file mode 100644 index 0000000..1a05f48 --- /dev/null +++ b/beeptimes.py @@ -0,0 +1,298 @@ + +import kivy +import time +#kivy.require('1.11.0') # replace with your current kivy version ! + +from kivy.app import App +from kivy.uix.boxlayout import BoxLayout +from kivy.uix.label import Label +from kivy.clock import Clock +from kivy.lang import Builder +from kivy.properties import StringProperty +from kivy.core.window import Window + +from tkinter import filedialog +from tkinter import simpledialog +from KivyOnTop import register_topmost, unregister_topmost + + + + +from tkinter import * +root = Tk() +root.withdraw() +folder_selected = filedialog.askopenfilename() + + +print(folder_selected) + +Court_name = simpledialog.askstring(title="Court Name",prompt="What Court is this?") + +print(Court_name) +#Builder.load_file('update_label.kv') + + +filePath = (folder_selected) + +print(filePath) + + + + + +#f = open(r"C:\Users\William\Documents\University\BeepDetails.log", "r") + +Builder.load_string(""" +: + rgba: (1,.2,.2,.2) + orientation: 'vertical' + + Label: + id: Court_name + text: root.Court_name + font_size: 30 + size_hint:(1,.2) + bold: True + + canvas.before: + Color: + rgba: root.rgba + Rectangle: + size: self.size + pos: self.pos + + + + Label: + id: kv_sec + text: root.seconds_string + font_size: 70 + size_hint:(1,.5) + + canvas.before: + Color: + rgba: root.rgba + Rectangle: + size: self.size + pos: self.pos + + Label: + id: average + text: root.average + font_size: 25 + size_hint:(1,.2) + + canvas.before: + Color: + rgba: root.rgba + Rectangle: + size: self.size + pos: self.pos + Label: + id: info + text: root.info + font_size: 30 + size_hint:(1,.2) + bold: True + + canvas.before: + Color: + rgba: root.rgba + Rectangle: + size: self.size + pos: self.pos + + + + + + +""") +Window.size = (300, 300) + +list = [0] * 10 + + + + + +class MySec(BoxLayout): + seconds_string = StringProperty('') + info = StringProperty('') + average = StringProperty('') + Court_name = StringProperty('') + + + #rgba = StringProperty('') + + +class MyApp(App): + def build(self): + self.title = 'Beeper V2.1' + + + + register_topmost(Window, 'Beeper V2.1') + Clock.schedule_interval(lambda dt: self.update_time(), 0.5) + + return MySec() + + def update_time(self): + if list[9] != 0: + del list[9] + else: + self.root.Court_name = Court_name + with open(filePath,'r') as f: + lastLine = None + lines = f.readlines() + if lines[-1] != lastLine: + lastLine = lines[-1] + BC = lastLine.find("Bounce Count") + BC = lastLine[BC+14:BC+15] + BC = int(BC) + + if BC == 0: + + + CN = lastLine.find("Crosses Net") + CN = lastLine[CN+13:CN+17] + + if CN == 'true': + + diff = lastLine.find("Time Diff") + diff = lastLine[diff+11:diff+19] + diff = float(diff) + diff = round((diff * 1000),1) + + + + + + if diff <= 120: + diff1 = (str(diff)+'ms') + self.root.seconds_string = diff1 + self.root.info = 'Cheating?' + + + + if list[0] != diff: + list.insert(0,diff) + avg = str(round((sum(list)/10),1)) + self.root.average = ('10 beep average:' + avg) + self.root.rgba = [218/255,165/255,32/255,1] + + + + else: + pass + + + elif ((diff > 120) and (diff <= 150)): + diff1 = (str(diff)+'ms') + self.root.seconds_string = diff1 + self.root.info = 'Looking good' + + if list[0] != diff: + list.insert(0,diff) + avg = str(round((sum(list)/10),1)) + + self.root.average = ('10 beep average:' + avg) + self.root.rgba = [19/255,229/255,19/255,1] + else: + pass + + + + + elif ((diff > 150) and (diff <= 250)): + diff1 = (str(diff)+'ms') + self.root.seconds_string = diff1 + self.root.info = 'Little slow' + + if list[0] != diff: + list.insert(0,diff) + avg = str(round((sum(list)/10),1)) + self.root.average = ('10 beep average:' + avg) + self.root.rgba = [235/255,116/255,19/255,1] + else: + pass + + + + elif ((diff > 250) and (diff <= 350)): + diff1 = (str(diff)+'ms') + self.root.seconds_string = diff1 + self.root.info = 'Noticeable slow' + + if list[0] != diff: + list.insert(0,diff) + avg = str(round((sum(list)/10),1)) + self.root.average = ('10 beep average:' + avg) + self.root.rgba = [219/255,0/255,0/255,1] + else: + pass + + + + + elif diff > 351: + diff1 = (str(diff)+'ms') + self.root.seconds_string = diff1 + self.root.info = 'Help!!!' + + if list[0] != diff: + list.insert(0,diff) + avg = str(round((sum(list)/10),1)) + self.root.average = ('10 beep average:' + avg) + self.root.rgba = [90/255,4/255,4/255,1] + else: + pass + + + + else: + + pass + + else: + pass + + + + + + +if __name__ == '__main__': + MyApp().run() + + # with open(filePath,'r') as f: + # lastLine = None + # lines = f.readlines() + # if lines[-1] != lastLine: + # lastLine = lines[-1] + # return Label(text= lastLine) + #def update(self): + # lastLine = None + + + + + + + + + + + + + + + + + + + + + + +