not1mm 25.4.14__py3-none-any.whl → 25.4.15__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- not1mm/__main__.py +5 -1
- not1mm/data/donors.html +1 -0
- not1mm/lib/version.py +1 -1
- not1mm/logwindow.py +8 -8
- not1mm/plugins/cq_ww_cw.py +0 -3
- not1mm/plugins/{es_ll_kv.py → es_open.py} +11 -9
- {not1mm-25.4.14.dist-info → not1mm-25.4.15.dist-info}/METADATA +2 -1
- {not1mm-25.4.14.dist-info → not1mm-25.4.15.dist-info}/RECORD +12 -12
- {not1mm-25.4.14.dist-info → not1mm-25.4.15.dist-info}/WHEEL +0 -0
- {not1mm-25.4.14.dist-info → not1mm-25.4.15.dist-info}/entry_points.txt +0 -0
- {not1mm-25.4.14.dist-info → not1mm-25.4.15.dist-info}/licenses/LICENSE +0 -0
- {not1mm-25.4.14.dist-info → not1mm-25.4.15.dist-info}/top_level.txt +0 -0
not1mm/__main__.py
CHANGED
@@ -11,6 +11,7 @@ Purpose: Provides main logging window and a crap ton more.
|
|
11
11
|
# alt cluster hamqth.com 7300
|
12
12
|
|
13
13
|
import datetime
|
14
|
+
import time
|
14
15
|
import importlib
|
15
16
|
import locale
|
16
17
|
import logging
|
@@ -2984,6 +2985,9 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
2984
2985
|
self.rig_control.sendcw(self.process_macro(function_key.toolTip()))
|
2985
2986
|
return
|
2986
2987
|
self.cw.sendcw(self.process_macro(function_key.toolTip()))
|
2988
|
+
if self.pref.get("cwtype") == 2:
|
2989
|
+
time.sleep(0.2)
|
2990
|
+
return
|
2987
2991
|
|
2988
2992
|
def toggle_run_sp(self) -> None:
|
2989
2993
|
"""Toggles the radioButton_run and radioButton_sp."""
|
@@ -3707,7 +3711,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
|
3707
3711
|
result = {"isdupe": False}
|
3708
3712
|
if self.contest.dupe_type == 5:
|
3709
3713
|
result = {"isdupe": False} # in case contest has no function.
|
3710
|
-
if hasattr(self.contest, "
|
3714
|
+
if hasattr(self.contest, "specific_contest_check_dupe"):
|
3711
3715
|
result = self.contest.specific_contest_check_dupe(self, call)
|
3712
3716
|
|
3713
3717
|
debugline = f"{result}"
|
not1mm/data/donors.html
CHANGED
not1mm/lib/version.py
CHANGED
not1mm/logwindow.py
CHANGED
@@ -71,7 +71,7 @@ class LogWindow(QDockWidget):
|
|
71
71
|
columns = {
|
72
72
|
0: "YYYY-MM-DD HH:MM:SS",
|
73
73
|
1: "Call",
|
74
|
-
2: "Freq (
|
74
|
+
2: "Freq (KHz)",
|
75
75
|
3: "Mode",
|
76
76
|
4: "Snt",
|
77
77
|
5: "Rcv",
|
@@ -189,7 +189,7 @@ class LogWindow(QDockWidget):
|
|
189
189
|
columns_to_show = msg.get("COLUMNS", [])
|
190
190
|
for column in columns_to_show:
|
191
191
|
if column == "Freq":
|
192
|
-
column = "Freq (
|
192
|
+
column = "Freq (KHz)"
|
193
193
|
self.generalLog.setColumnHidden(self.get_column(column), False)
|
194
194
|
self.focusedLog.setColumnHidden(self.get_column(column), False)
|
195
195
|
|
@@ -320,7 +320,7 @@ class LogWindow(QDockWidget):
|
|
320
320
|
self.generalLog.item(row, self.get_column("UUID")).text()
|
321
321
|
)
|
322
322
|
try:
|
323
|
-
_ = float(self.generalLog.item(row, self.get_column("Freq (
|
323
|
+
_ = float(self.generalLog.item(row, self.get_column("Freq (KHz)")).text())
|
324
324
|
except ValueError:
|
325
325
|
self.show_message_box("An invalid value has been entered for frequency.")
|
326
326
|
self.get_log()
|
@@ -331,7 +331,7 @@ class LogWindow(QDockWidget):
|
|
331
331
|
row, self.get_column("YYYY-MM-DD HH:MM:SS")
|
332
332
|
).text(),
|
333
333
|
"Call": self.generalLog.item(row, self.get_column("Call")).text().upper(),
|
334
|
-
"Freq": self.generalLog.item(row, self.get_column("Freq (
|
334
|
+
"Freq": self.generalLog.item(row, self.get_column("Freq (KHz)")).text(),
|
335
335
|
"Mode": self.generalLog.item(row, self.get_column("Mode")).text(),
|
336
336
|
"SNT": self.generalLog.item(row, self.get_column("Snt")).text(),
|
337
337
|
"RCV": self.generalLog.item(row, self.get_column("Rcv")).text(),
|
@@ -437,7 +437,7 @@ class LogWindow(QDockWidget):
|
|
437
437
|
self.focusedLog.item(row, self.get_column("UUID")).text()
|
438
438
|
)
|
439
439
|
try:
|
440
|
-
_ = float(self.focusedLog.item(row, self.get_column("Freq (
|
440
|
+
_ = float(self.focusedLog.item(row, self.get_column("Freq (KHz)")).text())
|
441
441
|
except ValueError:
|
442
442
|
self.show_message_box("An invalid value has been entered for frequency.")
|
443
443
|
self.get_log()
|
@@ -448,7 +448,7 @@ class LogWindow(QDockWidget):
|
|
448
448
|
row, self.get_column("YYYY-MM-DD HH:MM:SS")
|
449
449
|
).text(),
|
450
450
|
"Call": self.focusedLog.item(row, self.get_column("Call")).text().upper(),
|
451
|
-
"Freq": self.focusedLog.item(row, self.get_column("Freq (
|
451
|
+
"Freq": self.focusedLog.item(row, self.get_column("Freq (KHz)")).text(),
|
452
452
|
"Mode": self.focusedLog.item(row, self.get_column("Mode")).text(),
|
453
453
|
"SNT": self.focusedLog.item(row, self.get_column("Snt")).text(),
|
454
454
|
"RCV": self.focusedLog.item(row, self.get_column("Rcv")).text(),
|
@@ -793,7 +793,7 @@ class LogWindow(QDockWidget):
|
|
793
793
|
widget = QtWidgets.QTableWidgetItem(str(round(0.0, 2)))
|
794
794
|
self.generalLog.setItem(
|
795
795
|
number_of_rows,
|
796
|
-
self.get_column("Freq (
|
796
|
+
self.get_column("Freq (KHz)"),
|
797
797
|
widget,
|
798
798
|
)
|
799
799
|
self.generalLog.setItem(
|
@@ -955,7 +955,7 @@ class LogWindow(QDockWidget):
|
|
955
955
|
widget = QtWidgets.QTableWidgetItem(str(round(0.0, 2)))
|
956
956
|
self.focusedLog.setItem(
|
957
957
|
number_of_rows,
|
958
|
-
self.get_column("Freq (
|
958
|
+
self.get_column("Freq (KHz)"),
|
959
959
|
widget,
|
960
960
|
)
|
961
961
|
self.focusedLog.setItem(
|
not1mm/plugins/cq_ww_cw.py
CHANGED
@@ -38,7 +38,6 @@
|
|
38
38
|
|
39
39
|
import datetime
|
40
40
|
import logging
|
41
|
-
import time
|
42
41
|
from pathlib import Path
|
43
42
|
|
44
43
|
from PyQt6 import QtWidgets
|
@@ -496,7 +495,6 @@ def process_esm(self, new_focused_widget=None, with_enter=False):
|
|
496
495
|
self.save_contact()
|
497
496
|
continue
|
498
497
|
self.process_function_key(button)
|
499
|
-
time.sleep(0.2)
|
500
498
|
else:
|
501
499
|
if self.current_widget == "callsign":
|
502
500
|
if len(self.callsign.text()) > 2:
|
@@ -522,7 +520,6 @@ def process_esm(self, new_focused_widget=None, with_enter=False):
|
|
522
520
|
self.save_contact()
|
523
521
|
continue
|
524
522
|
self.process_function_key(button)
|
525
|
-
time.sleep(0.2)
|
526
523
|
|
527
524
|
|
528
525
|
def populate_history_info_line(self):
|
@@ -40,7 +40,7 @@ dupe_type = 5
|
|
40
40
|
|
41
41
|
|
42
42
|
def specific_contest_check_dupe(self, call):
|
43
|
-
""""""
|
43
|
+
"""Dupe checking specific to just this contest."""
|
44
44
|
|
45
45
|
# constant to split the contest
|
46
46
|
contest_length_in_minutes = 60
|
@@ -53,7 +53,9 @@ def specific_contest_check_dupe(self, call):
|
|
53
53
|
self.contest_start_date = start_date_init.split(" ")[0]
|
54
54
|
self.contest_start_time = start_date_init.split(" ")[1]
|
55
55
|
|
56
|
-
start_date_init_date = datetime.strptime(
|
56
|
+
start_date_init_date = datetime.datetime.strptime(
|
57
|
+
start_date_init, "%Y-%m-%d %H:%M:%S"
|
58
|
+
)
|
57
59
|
|
58
60
|
# Create time periods dynamically based on period count
|
59
61
|
time_periods = []
|
@@ -68,9 +70,12 @@ def specific_contest_check_dupe(self, call):
|
|
68
70
|
time_period_3 = time_periods[2] if len(time_periods) > 2 else None
|
69
71
|
|
70
72
|
# get current time in UTC
|
71
|
-
iso_current_time = datetime.now(datetime.timezone.utc)
|
73
|
+
iso_current_time = datetime.datetime.now(datetime.timezone.utc)
|
72
74
|
current_time = iso_current_time.replace(tzinfo=None)
|
73
75
|
|
76
|
+
result = {}
|
77
|
+
result["isdupe"] = False
|
78
|
+
|
74
79
|
if current_time < time_period_1:
|
75
80
|
start_date_init = self.contest_start_date + " " + self.contest_start_time
|
76
81
|
|
@@ -82,7 +87,7 @@ def specific_contest_check_dupe(self, call):
|
|
82
87
|
time_period_1.strftime("%Y-%m-%d %H:%M:%S"),
|
83
88
|
)
|
84
89
|
|
85
|
-
|
90
|
+
elif current_time < time_period_2 and current_time >= time_period_1:
|
86
91
|
start_date_init = self.contest_start_date + " " + self.contest_start_time
|
87
92
|
|
88
93
|
result = self.database.check_dupe_on_period_2_mode(
|
@@ -94,7 +99,7 @@ def specific_contest_check_dupe(self, call):
|
|
94
99
|
time_period_2.strftime("%Y-%m-%d %H:%M:%S"),
|
95
100
|
)
|
96
101
|
|
97
|
-
|
102
|
+
elif current_time < time_period_3 and current_time >= time_period_2:
|
98
103
|
start_date_init = self.contest_start_date + " " + self.contest_start_time
|
99
104
|
|
100
105
|
result = self.database.check_dupe_on_period_3_mode(
|
@@ -105,10 +110,7 @@ def specific_contest_check_dupe(self, call):
|
|
105
110
|
time_period_2.strftime("%Y-%m-%d %H:%M:%S"),
|
106
111
|
time_period_3.strftime("%Y-%m-%d %H:%M:%S"),
|
107
112
|
)
|
108
|
-
|
109
|
-
result = self.database.check_dupe_on_period_mode(
|
110
|
-
call, self.contact.get("Band", ""), mode, start_date_init
|
111
|
-
)
|
113
|
+
|
112
114
|
return result
|
113
115
|
|
114
116
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: not1mm
|
3
|
-
Version: 25.4.
|
3
|
+
Version: 25.4.15
|
4
4
|
Summary: NOT1MM Logger
|
5
5
|
Author-email: Michael Bridak <michael.bridak@gmail.com>
|
6
6
|
License: GPL-3.0-or-later
|
@@ -254,6 +254,7 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
|
|
254
254
|
|
255
255
|
## Recent Changes
|
256
256
|
|
257
|
+
- [25-4-15] Corrected dupe_type 5 check for contest specific function. Fixed wrong ES Open plugin name. Fixed some problems with the specific_contest_check_dupe datetime namespace. And other stuff.
|
257
258
|
- [25-4-14] Add ES Open HF Chanmpionship.
|
258
259
|
- [25-4-13] Fix crash in JIDX Cabrillo output.
|
259
260
|
- [25-4-12] Added an Auto CQ time to fire progress bar.
|
@@ -1,9 +1,9 @@
|
|
1
1
|
not1mm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
2
|
-
not1mm/__main__.py,sha256=
|
2
|
+
not1mm/__main__.py,sha256=8HKLRYFb0-eoqJmDQL6jQkAYuBUONiuo9Pkc8Cl5QrQ,154047
|
3
3
|
not1mm/bandmap.py,sha256=-zu5slsuAm2GmeW8g3yvURzsuQxemwIQfw1HEq8xKHM,29920
|
4
4
|
not1mm/checkwindow.py,sha256=zEHlw40j6Wr3rvKbCQf2lcezCoiZqaBqEvBjQU5aKW0,7630
|
5
5
|
not1mm/fsutils.py,sha256=ukHKxKTeNKxKwqRaJjtzRShL4X5Xl0jRBbADyy3Ifp8,1701
|
6
|
-
not1mm/logwindow.py,sha256=
|
6
|
+
not1mm/logwindow.py,sha256=e36t4ebyhLF6UR3y3HJWUwL1rzeqRFzdek7NAYINJNM,42565
|
7
7
|
not1mm/lookupservice.py,sha256=GkY_qHZfrW6XHf8upIoaG4hCFqm0fg6Ganu9ConGrIc,2628
|
8
8
|
not1mm/radio.py,sha256=_b-tSFuDLoBKnABxrsafGQu2p33U-KOubY7-qgLV2yg,5408
|
9
9
|
not1mm/ratewindow.py,sha256=PeFmmXYKA6ikR8AzWB6n5TS_1NoaHLocw4pSdySq_7A,6995
|
@@ -23,7 +23,7 @@ not1mm/data/configuration.ui,sha256=mqhEvxD9lQGeoEkUrvbO9uNrOG62z6EIUUMa_b_SG-o,
|
|
23
23
|
not1mm/data/contests.sql,sha256=4hmJCDvrbxnA_Y5S4T5o52TZieeFk6QUwFerwlFePNA,89307
|
24
24
|
not1mm/data/cty.json,sha256=bwPhOrOAgvV9JiXUDT9kzCqfNWAhGuJQt489h0SKsCk,4925375
|
25
25
|
not1mm/data/cwmacros.txt,sha256=NztufsX6R52gAO7VyJ2AHr7wOh41pJTwHKh5Lcs32ds,468
|
26
|
-
not1mm/data/donors.html,sha256=
|
26
|
+
not1mm/data/donors.html,sha256=alw5wpOdAX4hcJLx7NyhNRdSdmWOiTlD-CQXVWcULXU,333
|
27
27
|
not1mm/data/editcontact.ui,sha256=TNOsXETYfDaON4wj6AkzCJ-n2SmbNRO2-g2SLl5m8s0,27437
|
28
28
|
not1mm/data/editmacro.ui,sha256=Vg-S62ogKYcWlDDlza_JYyZkCQfa8mCfF-cFqpBej-w,2700
|
29
29
|
not1mm/data/greendot.png,sha256=El9TomJcGtViRcHOR7kMxGzjzvYs0TSAqOb3tZv0JDA,368
|
@@ -118,7 +118,7 @@ not1mm/lib/plugin_common.py,sha256=D1OBjyLmX7zuSPqgTCmHwXzAKA12J_zTQItvyIem-4Y,1
|
|
118
118
|
not1mm/lib/select_contest.py,sha256=WsptLuwkouIHeocJL3oZ6-eUfEnhpwdc-x7eMZ_TIVM,359
|
119
119
|
not1mm/lib/settings.py,sha256=mXffn8Xaj5KATPQinNBR0V5DbHWQPsRfh24_axWGYuk,15254
|
120
120
|
not1mm/lib/super_check_partial.py,sha256=hwT2NRwobu0PLDyw6ltmbmcAtGBD02CKGFbgGWjXMqA,2334
|
121
|
-
not1mm/lib/version.py,sha256=
|
121
|
+
not1mm/lib/version.py,sha256=d07nIUEGHbzIjMldXAiykeKTi6Fwohaw1earZleHP90,48
|
122
122
|
not1mm/lib/versiontest.py,sha256=8vDNptuBBunn-1IGkjNaquehqBYUJyjrPSF8Igmd4_Y,1286
|
123
123
|
not1mm/plugins/10_10_fall_cw.py,sha256=oJh3JKqjOpnWElSlZpiQ631UnaOd8qra5s9bl_QoInk,14783
|
124
124
|
not1mm/plugins/10_10_spring_cw.py,sha256=p7dSDtbFK0e6Xouw2V6swYn3VFVgHKyx4IfRWyBjMZY,14786
|
@@ -143,7 +143,7 @@ not1mm/plugins/cq_160_ssb.py,sha256=9KKDmmapETEebm1azfEzUWk1NyW3TBnYtBlFIPZYHBs,
|
|
143
143
|
not1mm/plugins/cq_wpx_cw.py,sha256=F5lLuXumrviNHnNEk377OKeEJCnv_j9vnjHEcV70gFc,18249
|
144
144
|
not1mm/plugins/cq_wpx_rtty.py,sha256=WohxnrCIC2EF7hqLLcixJFAK505X-Z766L3DMVUf4sA,21068
|
145
145
|
not1mm/plugins/cq_wpx_ssb.py,sha256=mtUD0tQnraDHoCHIeuWpOD64my3Kni9mXVH5IF2QPL0,16816
|
146
|
-
not1mm/plugins/cq_ww_cw.py,sha256=
|
146
|
+
not1mm/plugins/cq_ww_cw.py,sha256=EtcfWGZCb49WXBNoVzB7WCy5JmLc1KLglmA0O1PFN2w,18040
|
147
147
|
not1mm/plugins/cq_ww_rtty.py,sha256=2u3k4ofPh3S4B-BVlQtis-X4rwdx221WRf3hjHWPEyg,22549
|
148
148
|
not1mm/plugins/cq_ww_ssb.py,sha256=txeBfJ8rZCrAG2BWY-UmTH81ufRYbkeJJ6NpnV1eKKg,18055
|
149
149
|
not1mm/plugins/cwt.py,sha256=_bYlv6AMhfNVI7pChkSfEZ9amaIYhxu71qdmwgPTrKw,17594
|
@@ -152,7 +152,7 @@ not1mm/plugins/darc_xmas.py,sha256=p5UNYLdtylsC_sSlxT8NvXXL1oSW0KyUhIN-rJonHgI,1
|
|
152
152
|
not1mm/plugins/ea_majistad_cw.py,sha256=tl9y92Oz4NTch4H-SrBnZND2tHGqWQvtgl3emXfU8og,23352
|
153
153
|
not1mm/plugins/ea_majistad_ssb.py,sha256=TwZLHwgybpIgA4ECXzV3bIeP89MLr3vXa4_O99-mgxQ,22946
|
154
154
|
not1mm/plugins/ea_rtty.py,sha256=JvszWdtUqC_Sn2sJAlMhMp2AdlLyAIj-6nWT-yFkihw,23229
|
155
|
-
not1mm/plugins/
|
155
|
+
not1mm/plugins/es_open.py,sha256=lGFYhD13X5qS-mn2YFPiS_M7IoxNwcwPlTwh7w4bQqo,18363
|
156
156
|
not1mm/plugins/general_logging.py,sha256=eQuna-LnrWpf93LmHTTo6956GWoGocVfeYnzY5cyTmw,9600
|
157
157
|
not1mm/plugins/helvetia.py,sha256=fDKhvjDh5PxxLxmxvqTHzt-u0cMjHOjlF6JWBu3qB20,20079
|
158
158
|
not1mm/plugins/iaru_fieldday_r1_cw.py,sha256=1AVyZFi3ri2zqaNJY181Wtyz74fai8QLoi7PoyXpfaY,17218
|
@@ -179,9 +179,9 @@ not1mm/plugins/stew_perry_topband.py,sha256=3U-Dr28haBTqTaZWLiC1qHQBmLsLENDL-ihy
|
|
179
179
|
not1mm/plugins/ukeidx.py,sha256=0ABGW7_9Ui0Rgr8mkPBxOJokAIerM1a4-HWnl6VsnV8,19105
|
180
180
|
not1mm/plugins/weekly_rtty.py,sha256=C8Xs3Q5UgSYx-mFFar8BVARWtmqlyrbeC98Ubzb4UN8,20128
|
181
181
|
not1mm/plugins/winter_field_day.py,sha256=hmAMgkdqIXtnCNyUp8J9Bb8liN8wj10wps6ROuG-Bok,15284
|
182
|
-
not1mm-25.4.
|
183
|
-
not1mm-25.4.
|
184
|
-
not1mm-25.4.
|
185
|
-
not1mm-25.4.
|
186
|
-
not1mm-25.4.
|
187
|
-
not1mm-25.4.
|
182
|
+
not1mm-25.4.15.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
183
|
+
not1mm-25.4.15.dist-info/METADATA,sha256=ycsc9ljWugzDQWq6BSVg2L0w8G3GWxEdQ8lLUNHE_bo,39592
|
184
|
+
not1mm-25.4.15.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
185
|
+
not1mm-25.4.15.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
|
186
|
+
not1mm-25.4.15.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
|
187
|
+
not1mm-25.4.15.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|