not1mm 24.11.23__py3-none-any.whl → 24.11.24__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/data/donors.html CHANGED
@@ -1,4 +1,8 @@
1
1
  <p>
2
+ <h4><center>To donate visit:</center></h4>
3
+ <center>https://paypal.me/k6gte</center>
4
+ </p>
5
+ <p>
2
6
  <h2>
3
7
  <center>Donors</center>
4
8
  </h2>
not1mm/lib/version.py CHANGED
@@ -1,3 +1,3 @@
1
1
  """It's the version"""
2
2
 
3
- __version__ = "24.11.23"
3
+ __version__ = "24.11.24"
@@ -433,3 +433,94 @@ def recalculate_mults(self):
433
433
  else:
434
434
  contact["IsMultiplier1"] = 0
435
435
  self.database.change_contact(contact)
436
+
437
+
438
+ def process_esm(self, new_focused_widget=None, with_enter=False):
439
+ """ESM State Machine"""
440
+
441
+ # self.pref["run_state"]
442
+
443
+ # -----===== Assigned F-Keys =====-----
444
+ # self.esm_dict["CQ"]
445
+ # self.esm_dict["EXCH"]
446
+ # self.esm_dict["QRZ"]
447
+ # self.esm_dict["AGN"]
448
+ # self.esm_dict["HISCALL"]
449
+ # self.esm_dict["MYCALL"]
450
+ # self.esm_dict["QSOB4"]
451
+
452
+ # ----==== text fields ====----
453
+ # self.callsign
454
+ # self.sent
455
+ # self.receive
456
+ # self.other_1
457
+ # self.other_2
458
+
459
+ if new_focused_widget is not None:
460
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
461
+
462
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
463
+
464
+ for a_button in [
465
+ self.esm_dict["CQ"],
466
+ self.esm_dict["EXCH"],
467
+ self.esm_dict["QRZ"],
468
+ self.esm_dict["AGN"],
469
+ self.esm_dict["HISCALL"],
470
+ self.esm_dict["MYCALL"],
471
+ self.esm_dict["QSOB4"],
472
+ ]:
473
+ if a_button is not None:
474
+ self.restore_button_color(a_button)
475
+
476
+ buttons_to_send = []
477
+
478
+ if self.pref.get("run_state"):
479
+ if self.current_widget == "callsign":
480
+ if len(self.callsign.text()) < 3:
481
+ self.make_button_green(self.esm_dict["CQ"])
482
+ buttons_to_send.append(self.esm_dict["CQ"])
483
+ elif len(self.callsign.text()) > 2:
484
+ self.make_button_green(self.esm_dict["HISCALL"])
485
+ self.make_button_green(self.esm_dict["EXCH"])
486
+ buttons_to_send.append(self.esm_dict["HISCALL"])
487
+ buttons_to_send.append(self.esm_dict["EXCH"])
488
+
489
+ elif self.current_widget in ["other_2"]:
490
+ if self.other_2.text() == "":
491
+ self.make_button_green(self.esm_dict["AGN"])
492
+ buttons_to_send.append(self.esm_dict["AGN"])
493
+ else:
494
+ self.make_button_green(self.esm_dict["QRZ"])
495
+ buttons_to_send.append(self.esm_dict["QRZ"])
496
+ buttons_to_send.append("LOGIT")
497
+
498
+ if with_enter is True and bool(len(buttons_to_send)):
499
+ for button in buttons_to_send:
500
+ if button:
501
+ if button == "LOGIT":
502
+ self.save_contact()
503
+ continue
504
+ self.process_function_key(button)
505
+ else:
506
+ if self.current_widget == "callsign":
507
+ if len(self.callsign.text()) > 2:
508
+ self.make_button_green(self.esm_dict["MYCALL"])
509
+ buttons_to_send.append(self.esm_dict["MYCALL"])
510
+
511
+ elif self.current_widget in ["other_2"]:
512
+ if self.other_2.text() == "":
513
+ self.make_button_green(self.esm_dict["AGN"])
514
+ buttons_to_send.append(self.esm_dict["AGN"])
515
+ else:
516
+ self.make_button_green(self.esm_dict["EXCH"])
517
+ buttons_to_send.append(self.esm_dict["EXCH"])
518
+ buttons_to_send.append("LOGIT")
519
+
520
+ if with_enter is True and bool(len(buttons_to_send)):
521
+ for button in buttons_to_send:
522
+ if button:
523
+ if button == "LOGIT":
524
+ self.save_contact()
525
+ continue
526
+ self.process_function_key(button)
@@ -433,3 +433,94 @@ def recalculate_mults(self):
433
433
  else:
434
434
  contact["IsMultiplier1"] = 0
435
435
  self.database.change_contact(contact)
436
+
437
+
438
+ def process_esm(self, new_focused_widget=None, with_enter=False):
439
+ """ESM State Machine"""
440
+
441
+ # self.pref["run_state"]
442
+
443
+ # -----===== Assigned F-Keys =====-----
444
+ # self.esm_dict["CQ"]
445
+ # self.esm_dict["EXCH"]
446
+ # self.esm_dict["QRZ"]
447
+ # self.esm_dict["AGN"]
448
+ # self.esm_dict["HISCALL"]
449
+ # self.esm_dict["MYCALL"]
450
+ # self.esm_dict["QSOB4"]
451
+
452
+ # ----==== text fields ====----
453
+ # self.callsign
454
+ # self.sent
455
+ # self.receive
456
+ # self.other_1
457
+ # self.other_2
458
+
459
+ if new_focused_widget is not None:
460
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
461
+
462
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
463
+
464
+ for a_button in [
465
+ self.esm_dict["CQ"],
466
+ self.esm_dict["EXCH"],
467
+ self.esm_dict["QRZ"],
468
+ self.esm_dict["AGN"],
469
+ self.esm_dict["HISCALL"],
470
+ self.esm_dict["MYCALL"],
471
+ self.esm_dict["QSOB4"],
472
+ ]:
473
+ if a_button is not None:
474
+ self.restore_button_color(a_button)
475
+
476
+ buttons_to_send = []
477
+
478
+ if self.pref.get("run_state"):
479
+ if self.current_widget == "callsign":
480
+ if len(self.callsign.text()) < 3:
481
+ self.make_button_green(self.esm_dict["CQ"])
482
+ buttons_to_send.append(self.esm_dict["CQ"])
483
+ elif len(self.callsign.text()) > 2:
484
+ self.make_button_green(self.esm_dict["HISCALL"])
485
+ self.make_button_green(self.esm_dict["EXCH"])
486
+ buttons_to_send.append(self.esm_dict["HISCALL"])
487
+ buttons_to_send.append(self.esm_dict["EXCH"])
488
+
489
+ elif self.current_widget in ["other_2"]:
490
+ if self.other_2.text() == "":
491
+ self.make_button_green(self.esm_dict["AGN"])
492
+ buttons_to_send.append(self.esm_dict["AGN"])
493
+ else:
494
+ self.make_button_green(self.esm_dict["QRZ"])
495
+ buttons_to_send.append(self.esm_dict["QRZ"])
496
+ buttons_to_send.append("LOGIT")
497
+
498
+ if with_enter is True and bool(len(buttons_to_send)):
499
+ for button in buttons_to_send:
500
+ if button:
501
+ if button == "LOGIT":
502
+ self.save_contact()
503
+ continue
504
+ self.process_function_key(button)
505
+ else:
506
+ if self.current_widget == "callsign":
507
+ if len(self.callsign.text()) > 2:
508
+ self.make_button_green(self.esm_dict["MYCALL"])
509
+ buttons_to_send.append(self.esm_dict["MYCALL"])
510
+
511
+ elif self.current_widget in ["other_2"]:
512
+ if self.other_2.text() == "":
513
+ self.make_button_green(self.esm_dict["AGN"])
514
+ buttons_to_send.append(self.esm_dict["AGN"])
515
+ else:
516
+ self.make_button_green(self.esm_dict["EXCH"])
517
+ buttons_to_send.append(self.esm_dict["EXCH"])
518
+ buttons_to_send.append("LOGIT")
519
+
520
+ if with_enter is True and bool(len(buttons_to_send)):
521
+ for button in buttons_to_send:
522
+ if button:
523
+ if button == "LOGIT":
524
+ self.save_contact()
525
+ continue
526
+ self.process_function_key(button)
not1mm/plugins/iaru_hf.py CHANGED
@@ -379,3 +379,113 @@ def cabrillo(self, file_encoding):
379
379
 
380
380
  def recalculate_mults(self):
381
381
  """Recalculates multipliers after change in logged qso."""
382
+
383
+
384
+ def process_esm(self, new_focused_widget=None, with_enter=False):
385
+ """ESM State Machine"""
386
+
387
+ # self.pref["run_state"]
388
+
389
+ # -----===== Assigned F-Keys =====-----
390
+ # self.esm_dict["CQ"]
391
+ # self.esm_dict["EXCH"]
392
+ # self.esm_dict["QRZ"]
393
+ # self.esm_dict["AGN"]
394
+ # self.esm_dict["HISCALL"]
395
+ # self.esm_dict["MYCALL"]
396
+ # self.esm_dict["QSOB4"]
397
+
398
+ # ----==== text fields ====----
399
+ # self.callsign
400
+ # self.sent
401
+ # self.receive
402
+ # self.other_1
403
+ # self.other_2
404
+
405
+ if new_focused_widget is not None:
406
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
407
+
408
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
409
+
410
+ for a_button in [
411
+ self.esm_dict["CQ"],
412
+ self.esm_dict["EXCH"],
413
+ self.esm_dict["QRZ"],
414
+ self.esm_dict["AGN"],
415
+ self.esm_dict["HISCALL"],
416
+ self.esm_dict["MYCALL"],
417
+ self.esm_dict["QSOB4"],
418
+ ]:
419
+ if a_button is not None:
420
+ self.restore_button_color(a_button)
421
+
422
+ buttons_to_send = []
423
+
424
+ if self.pref.get("run_state"):
425
+ if self.current_widget == "callsign":
426
+ if len(self.callsign.text()) < 3:
427
+ self.make_button_green(self.esm_dict["CQ"])
428
+ buttons_to_send.append(self.esm_dict["CQ"])
429
+ elif len(self.callsign.text()) > 2:
430
+ self.make_button_green(self.esm_dict["HISCALL"])
431
+ self.make_button_green(self.esm_dict["EXCH"])
432
+ buttons_to_send.append(self.esm_dict["HISCALL"])
433
+ buttons_to_send.append(self.esm_dict["EXCH"])
434
+
435
+ elif self.current_widget in ["other_2"]:
436
+ if self.other_2.text() == "":
437
+ self.make_button_green(self.esm_dict["AGN"])
438
+ buttons_to_send.append(self.esm_dict["AGN"])
439
+ else:
440
+ self.make_button_green(self.esm_dict["QRZ"])
441
+ buttons_to_send.append(self.esm_dict["QRZ"])
442
+ buttons_to_send.append("LOGIT")
443
+
444
+ if with_enter is True and bool(len(buttons_to_send)):
445
+ for button in buttons_to_send:
446
+ if button:
447
+ if button == "LOGIT":
448
+ self.save_contact()
449
+ continue
450
+ self.process_function_key(button)
451
+ else:
452
+ if self.current_widget == "callsign":
453
+ if len(self.callsign.text()) > 2:
454
+ self.make_button_green(self.esm_dict["MYCALL"])
455
+ buttons_to_send.append(self.esm_dict["MYCALL"])
456
+
457
+ elif self.current_widget in ["other_2"]:
458
+ if self.other_2.text() == "":
459
+ self.make_button_green(self.esm_dict["AGN"])
460
+ buttons_to_send.append(self.esm_dict["AGN"])
461
+ else:
462
+ self.make_button_green(self.esm_dict["EXCH"])
463
+ buttons_to_send.append(self.esm_dict["EXCH"])
464
+ buttons_to_send.append("LOGIT")
465
+
466
+ if with_enter is True and bool(len(buttons_to_send)):
467
+ for button in buttons_to_send:
468
+ if button:
469
+ if button == "LOGIT":
470
+ self.save_contact()
471
+ continue
472
+ self.process_function_key(button)
473
+
474
+
475
+ def populate_history_info_line(self):
476
+ result = self.database.fetch_call_history(self.callsign.text())
477
+ if result:
478
+ self.history_info.setText(
479
+ f"{result.get('Call', '')}, {result.get('Exch1', '')}, {result.get('UserText','...')}"
480
+ )
481
+ else:
482
+ self.history_info.setText("")
483
+
484
+
485
+ def check_call_history(self):
486
+ """"""
487
+ result = self.database.fetch_call_history(self.callsign.text())
488
+ if result:
489
+ self.history_info.setText(f"{result.get('UserText','')}")
490
+ if self.other_2.text() == "":
491
+ self.other_2.setText(f"{result.get('Exch1', '')}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: not1mm
3
- Version: 24.11.23
3
+ Version: 24.11.24
4
4
  Summary: NOT1MM Logger
5
5
  Author-email: Michael Bridak <michael.bridak@gmail.com>
6
6
  Project-URL: Homepage, https://github.com/mbridak/not1mm
@@ -221,8 +221,8 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
221
221
  - **CWOps CWT**
222
222
  - **DARC Xmas**
223
223
  - **Helvetia**
224
- - IARU Fieldday R1 CW, SSB
225
- - IARU HF
224
+ - **IARU Fieldday R1 CW, SSB**
225
+ - **IARU HF**
226
226
  - **ICWC MST**
227
227
  - **Japan International DX CW, SSB**
228
228
  - **K1USN Slow Speed Test**
@@ -238,6 +238,7 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
238
238
 
239
239
  ## Recent Changes (Polishing the Turd)
240
240
 
241
+ - [24-11-24] Added ESM to IARU HF and FieldDay.
241
242
  - [24-11-23] Made macros per contest.
242
243
  - [24-11-21] Merged PR from alduhoo setting CW Speed via rigctld, Added ESM and call history support for General Logging.
243
244
  - [24-11-19] Added ESM to Stew Perry, Phone Weekly, Medium Speed Test and JIDX.
@@ -20,7 +20,7 @@ not1mm/data/configuration.ui,sha256=iva5exfJJFBiiITpz6vgCB8e_j0lgsLeVWOltxtUk4g,
20
20
  not1mm/data/contests.sql,sha256=4hmJCDvrbxnA_Y5S4T5o52TZieeFk6QUwFerwlFePNA,89307
21
21
  not1mm/data/cty.json,sha256=dPG9K1Pm4Rxd4uJom_gQ8y-sbqiZfILpl4kBAFnOveU,4877142
22
22
  not1mm/data/cwmacros.txt,sha256=NztufsX6R52gAO7VyJ2AHr7wOh41pJTwHKh5Lcs32ds,468
23
- not1mm/data/donors.html,sha256=XCh7XR5SyPzFx88UEaNLIGg41bMVcaNEO5L_c9Lrd2k,146
23
+ not1mm/data/donors.html,sha256=DtH9DoDZoMLJf6adisJT8jCcnyhmj4gzHhX5UmmDgjI,239
24
24
  not1mm/data/editcontact.ui,sha256=TNOsXETYfDaON4wj6AkzCJ-n2SmbNRO2-g2SLl5m8s0,27437
25
25
  not1mm/data/editmacro.ui,sha256=Vg-S62ogKYcWlDDlza_JYyZkCQfa8mCfF-cFqpBej-w,2700
26
26
  not1mm/data/greendot.png,sha256=6h6KFMj5mmu07ppPWXXewH0PLAvbOOre-5z6rpzWLLo,474
@@ -114,7 +114,7 @@ not1mm/lib/plugin_common.py,sha256=AABdx9DoTT8Znrup7AkfmKGC22hshMsEypiMqV0iKw0,1
114
114
  not1mm/lib/select_contest.py,sha256=WsptLuwkouIHeocJL3oZ6-eUfEnhpwdc-x7eMZ_TIVM,359
115
115
  not1mm/lib/settings.py,sha256=Xt0WE2ro_kUYdugQ0Pe1SQX07MHrJ0jyQqDqAKKqxuU,13564
116
116
  not1mm/lib/super_check_partial.py,sha256=hwT2NRwobu0PLDyw6ltmbmcAtGBD02CKGFbgGWjXMqA,2334
117
- not1mm/lib/version.py,sha256=i-XV0bR64KuRtURdg5UiGO_HwzJh30A1goTNLNf275w,49
117
+ not1mm/lib/version.py,sha256=ddqZBy3zla-M51uDFW1jsP62ZHX9yMyEpfCi9nVIfjg,49
118
118
  not1mm/lib/versiontest.py,sha256=8vDNptuBBunn-1IGkjNaquehqBYUJyjrPSF8Igmd4_Y,1286
119
119
  not1mm/plugins/10_10_fall_cw.py,sha256=r2YkRNiMS_3hXrf3zeiijzW24roilyIXnwXwTd07X8M,11208
120
120
  not1mm/plugins/10_10_spring_cw.py,sha256=EBBcVgxDhtAK7cGHq9LOU6LhY9vSqlk7GEkApn3KRYM,11213
@@ -144,9 +144,9 @@ not1mm/plugins/cwt.py,sha256=3gA1DqiXxj5NARdG5i0PyFmuq3XSXn6LisZxD5jFs4M,17034
144
144
  not1mm/plugins/darc_xmas.py,sha256=GdtAQVCLogKGzZaexJfzsZms5SbLLlO1YweFPjgvYWw,18458
145
145
  not1mm/plugins/general_logging.py,sha256=NV_FCgpAEEQrVRxMDD7nQ2krJgPrhtopizxrGndtUNk,6686
146
146
  not1mm/plugins/helvetia.py,sha256=SRKn7jflfYPUNrvmErDM44af5YWUe57h7JkIwFSbT0Q,19609
147
- not1mm/plugins/iaru_fieldday_r1_cw.py,sha256=b-WA-KcixXNTozO5lfqujeCBXFRuM_Ubm_9MIwlrhIs,13555
148
- not1mm/plugins/iaru_fieldday_r1_ssb.py,sha256=gQH2XQuE-ywaGq2sde-sPP1_C6_Y81v3FPDiE2BJixA,13560
149
- not1mm/plugins/iaru_hf.py,sha256=PVdShWxugsn211ti8mfoWBveQyIkN8XFDMQO4tfNUEY,11846
147
+ not1mm/plugins/iaru_fieldday_r1_cw.py,sha256=oWeFuKxvY15vRiUh2vW3z3o7mxJMae7vfpKx4OFU_yA,16816
148
+ not1mm/plugins/iaru_fieldday_r1_ssb.py,sha256=HylTAcNs0DSii5EDzMQlocjs4k7rQ579YvLrwn6sqIQ,16821
149
+ not1mm/plugins/iaru_hf.py,sha256=RcVf0UFaHX0eSpUZMMGHC0HTsOy_SwTH9Yi9SeJNQUA,15715
150
150
  not1mm/plugins/icwc_mst.py,sha256=K1tgNXiknGbnvxG4sEZQCgZnjI6x3OYRI_4Djmr8E2Q,15976
151
151
  not1mm/plugins/jidx_cw.py,sha256=KJOE3fU0KVMqD5IqvnN3YDHPEwrMx3yJZBmCtAIP7WQ,15650
152
152
  not1mm/plugins/jidx_ph.py,sha256=1l92EmDZJFRGZjR1VrISgFc8KoHVfmJvLsaVsuufIMs,14599
@@ -162,9 +162,9 @@ not1mm/plugins/ref_ssb.py,sha256=G2Gz4kApchmOZQVnBexEokSEvdb-mZWJAfyJ1D6JDGY,204
162
162
  not1mm/plugins/stew_perry_topband.py,sha256=Gy_vv6tgkR-3vmvsUVO0pVfHMkUJSxpt7G4secn0RH8,15084
163
163
  not1mm/plugins/weekly_rtty.py,sha256=PI0_AtEdZZKGAuKnP-b2EYn9xwCN1Ablk38trbNP3Rc,19603
164
164
  not1mm/plugins/winter_field_day.py,sha256=9w3tDL9ZWiENSTERc3vzDbBktvI7pnyNvlH6fDjAi08,14841
165
- not1mm-24.11.23.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
166
- not1mm-24.11.23.dist-info/METADATA,sha256=7la-wqRZm6lciPrTOHi8B_ly4eoiBqCUowixz38RbSU,36652
167
- not1mm-24.11.23.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
168
- not1mm-24.11.23.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
169
- not1mm-24.11.23.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
170
- not1mm-24.11.23.dist-info/RECORD,,
165
+ not1mm-24.11.24.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
166
+ not1mm-24.11.24.dist-info/METADATA,sha256=2W_0n3y2ITtAWE0uFKxK5J1IIuH9Iy6Fu-sckNYXL50,36708
167
+ not1mm-24.11.24.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
168
+ not1mm-24.11.24.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
169
+ not1mm-24.11.24.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
170
+ not1mm-24.11.24.dist-info/RECORD,,