Changeset 01c3cce in flowtimer
- Timestamp:
- 08/25/24 23:56:18 (9 months ago)
- Branches:
- guix
- Children:
- 406938d
- Parents:
- d310de3
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
flowtimer/RecurringPhaseSequence.py
rd310de3 r01c3cce 92 92 return 93 93 else: 94 print("Sequence finished")95 94 if self.passes_left == 0: 96 95 self.abort() … … 117 116 118 117 def tick(self, ticks): 119 print("Before tick")120 print(self.current_phase)121 print("Tick:", ticks)122 118 if not self.completed(): 123 119 result = self.current_phase.tick(ticks) 124 print("Result", result, "\n")125 120 if self.current_phase.completed(): 126 print(self.current_phase.title, "Phase Completed")127 121 self.advance_to_next_phase() 128 print("Advanced to", self.current_phase, "\n")129 122 result = self.tick(abs(result)) 130 123 return 131 if self.completed(): 132 self.advance_to_next_phase() 133 print("Passes left:", self.passes_left) 124 # if self.completed(): 125 # self.advance_to_next_phase() 134 126 135 127 def unrolled(self): -
flowtimer/main.py
rd310de3 r01c3cce 59 59 self.label_start.pack(side='left', fill='both', expand=True) 60 60 61 self.label_sequence = tk.Label(self.center_frame )61 self.label_sequence = tk.Label(self.center_frame, bg='red') 62 62 self.label_sequence.pack(side='top', fill='both', expand=True) 63 63 … … 67 67 self.progressbar["maximum"] = 59 68 68 self.progressbar.pack(side='top') 69 70 self.label_duration = tk.Label(self.center_frame) 69 self.label_duration = tk.Label(self.center_frame, bg='green') 71 70 self.label_duration.pack(side='top', fill='both', expand=True) 72 71 … … 107 106 def current_config(self): 108 107 if self.schedule.current_block.is_sequence(): 109 return f"{self.schedule.current_block.title} / {self.schedule.current_block.current_phase.title} / {self.schedule.current_block.current_phase_number()+1} of {len(self.schedule.current_block.phase _list)} ({self.schedule.current_block.passes_left})"108 return f"{self.schedule.current_block.title} / {self.schedule.current_block.current_phase.title} / {self.schedule.current_block.current_phase_number()+1} of {len(self.schedule.current_block.phases)} ({self.schedule.current_block.passes_left})" 110 109 111 110 def current_time_status(self): … … 117 116 def tick(self): 118 117 119 if self.schedule.paused():118 if not self.schedule.running(): 120 119 return 121 120 self.label_start.pack_forget() 122 121 current_process = self.after(1000, self.tick) 123 122 if self.schedule.state == 'initial': 124 self.label_sequence.config(self.start_color(root))125 123 self.label_sequence.config(text=("\n" + str(self.schedule.current_block.title) + "...")) 126 self.label_duration.config(self.start_color(root))127 124 self.label_duration.config(text=self.current_time_status()) 128 125 self.schedule.start() … … 134 131 self.schedule.current_block.ticks_left) % 60 135 132 self.progressbar.update() 136 self.label_sequence.configure(self.start_color(root)) 137 self.center_frame.config(bg=self.start_color(root)) 138 self.label_sequence.config(bg=self.random_color(self.label_sequence)) 139 self.label_duration.config(self.random_color(root)) 140 self.label_duration.config(text=self.current_time_status(), bg=self.random_color(self.label_duration)) 141 self.label_config_text.config(text=self.current_config(), fg='blue', font="Times 48") 133 self.label_duration.config(text=self.current_time_status()) 134 self.label_config_text.config(text=self.current_config()) 142 135 else: 143 self.label_sequence.configure(self.time_out_color(root))144 136 self.label_sequence.config(text=("\n" + "\nTime over !"), bg="red", fg="white") 145 137 self.label_duration.config(text="", bg="red", fg="white") … … 179 171 self.parent.destroy() 180 172 181 def random_color(self, widget):182 # FIXME: Do not hardcode this183 if self.schedule.current_block.title == "Huddle":184 widget.configure(bg="blue")185 self.label_sequence.config(text=("\n" + "Besprechung"))186 self.center_frame.configure(bg="blue")187 if self.schedule.current_block.title == "Tasking":188 widget.configure(bg="green")189 self.label_sequence.config(text=("\n" + "Intensivphase"))190 self.center_frame.configure(bg="green")191 if self.schedule.current_block.title == "Work":192 widget.configure(bg="gold")193 self.label_sequence.config(text=("\n" + "Synchronisation"))194 self.center_frame.configure(bg="gold")195 self.label_sequence.configure(fg="blue")196 self.label_duration.configure(fg="blue")197 198 def start_color(self, widget):199 self.label_sequence.configure(fg="white", font="times 72")200 self.label_duration.configure(fg="white", font="times 72")201 self.center_frame.configure(bg="blue")202 widget.configure(bg="blue")203 204 def time_out_color(self, widget):205 widget.configure(bg="red")206 207 173 def change_config(self, json_string): 208 174 self.schedule = Schedule.from_json(json_string) -
tests/test_schedule.py
rd310de3 r01c3cce 74 74 schedule.tick(phase1.initial_ticks) # Complete phase1 75 75 schedule.tick(sequence.initial_ticks) # Complete sequence 76 print(schedule.current_block)77 76 assert schedule.completed() is True 78 77 assert schedule.state == "completed"
Note:
See TracChangeset
for help on using the changeset viewer.