|
23 | 23 | # SOFTWARE. |
24 | 24 |
|
25 | 25 | import sys, os, argparse |
| 26 | +import datetime |
| 27 | +import random |
26 | 28 |
|
27 | 29 | sys.path.append(os.path.join(sys.path[0],'../../libs/pyTermTk')) |
28 | 30 | import TermTk as ttk |
29 | 31 |
|
30 | 32 | sys.path.append(os.path.join(sys.path[0],'..')) |
31 | 33 | from showcase._showcasehelper import getUtfWord |
32 | 34 |
|
| 35 | +# Random date between two dates |
| 36 | +def random_date(start_date, end_date): |
| 37 | + time_between = end_date - start_date |
| 38 | + days_between = time_between.days |
| 39 | + random_days = random.randrange(days_between) |
| 40 | + return start_date + datetime.timedelta(days=random_days) |
| 41 | + |
| 42 | +# Random time |
| 43 | +def random_time(): |
| 44 | + hour = random.randint(0, 23) |
| 45 | + minute = random.randint(0, 59) |
| 46 | + second = random.randint(0, 59) |
| 47 | + return datetime.time(hour, minute, second) |
| 48 | + |
| 49 | +# Random datetime |
| 50 | +def random_datetime(start_datetime, end_datetime): |
| 51 | + time_between = end_datetime - start_datetime |
| 52 | + total_seconds = int(time_between.total_seconds()) |
| 53 | + random_seconds = random.randrange(total_seconds) |
| 54 | + return start_datetime + datetime.timedelta(seconds=random_seconds) |
| 55 | + |
33 | 56 | def demoTTkTable(root= None): |
34 | 57 | # Basic Table Demo |
35 | 58 |
|
36 | 59 | # Setup a model using a 2d list of random values |
37 | | - dataList = [[f"0x{i:04X}"] + [int(i*100),float(i*100),ttk.TTkString(getUtfWord(),ttk.TTkColor.YELLOW)] + [getUtfWord() for _ in range(10)] for i in range(101)] |
| 60 | + dataList = [ |
| 61 | + [f"0x{i:04X}"] + |
| 62 | + [int(i*100), float(i*100), ttk.TTkString(getUtfWord(),ttk.TTkColor.YELLOW)] + |
| 63 | + [random_time()] + |
| 64 | + [random_date(datetime.date(2020,1,1), datetime.date(2025,12,31))] + |
| 65 | + [random_datetime(datetime.datetime(2020,1,1), datetime.datetime(2025,12,31))] + |
| 66 | + [getUtfWord() for _ in range(10)] |
| 67 | + for i in range(101) |
| 68 | + ] |
38 | 69 | tableModel = ttk.TTkTableModelList(data=dataList) |
39 | 70 |
|
40 | 71 | # Init the table with the model defilned |
|
0 commit comments