1 import sys
2 import time
3 from threading import Thread
4
6 spin_screen_pos = 1
7 char_index_pos = 0
8 sleep_time = 1
9 spin_type = 2
10
12 Thread.__init__(self)
13 self.setDaemon(True)
14 self.stop_spinner = False
15 if type == 0:
16 self.char = ['O', 'o', '-', 'o','0']
17 elif type == 1:
18 self.char = ['.', 'o', 'O', 'o','.']
19 elif type == 2:
20 self.char = ['|', '/', '-', '\\', '-']
21 else:
22 self.char = ['*','#','@','%','+']
23 self.len = len(self.char)
24
26 str, crnt = self.curr(crnt)
27 sys.stdout.write("\b \b%s" % str)
28 sys.stdout.flush()
29 time.sleep(self.sleep_time)
30 return crnt
31
32 - def curr(self,crnt):
33 if crnt == 4:
34 return self.char[4], 0
35 elif crnt == 0:
36 return self.char[0], 1
37 else:
38 test = crnt
39 crnt += 1
40 return self.char[test], crnt
41
43 sys.stdout.write("\b \b\n")
44
46 self.stop_spinner = True
47 time.sleep(0.5)
48
56
58 print 'Waiting for process...',
59 self.start()
60 time.sleep(3)
61 self.stop()
62 print 'Process is finished...'
63
64 if __name__ == "__main__":
65 s = Spinner()
66 s.test()
67