not1mm 24.11.24__py3-none-any.whl → 24.11.24.1__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/lib/version.py CHANGED
@@ -1,3 +1,3 @@
1
1
  """It's the version"""
2
2
 
3
- __version__ = "24.11.24"
3
+ __version__ = "24.11.24.1"
@@ -359,3 +359,94 @@ def cabrillo(self, file_encoding):
359
359
 
360
360
  def recalculate_mults(self):
361
361
  """Recalculates multipliers after change in logged qso."""
362
+
363
+
364
+ def process_esm(self, new_focused_widget=None, with_enter=False):
365
+ """ESM State Machine"""
366
+
367
+ # self.pref["run_state"]
368
+
369
+ # -----===== Assigned F-Keys =====-----
370
+ # self.esm_dict["CQ"]
371
+ # self.esm_dict["EXCH"]
372
+ # self.esm_dict["QRZ"]
373
+ # self.esm_dict["AGN"]
374
+ # self.esm_dict["HISCALL"]
375
+ # self.esm_dict["MYCALL"]
376
+ # self.esm_dict["QSOB4"]
377
+
378
+ # ----==== text fields ====----
379
+ # self.callsign
380
+ # self.sent
381
+ # self.receive
382
+ # self.other_1
383
+ # self.other_2
384
+
385
+ if new_focused_widget is not None:
386
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
387
+
388
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
389
+
390
+ for a_button in [
391
+ self.esm_dict["CQ"],
392
+ self.esm_dict["EXCH"],
393
+ self.esm_dict["QRZ"],
394
+ self.esm_dict["AGN"],
395
+ self.esm_dict["HISCALL"],
396
+ self.esm_dict["MYCALL"],
397
+ self.esm_dict["QSOB4"],
398
+ ]:
399
+ if a_button is not None:
400
+ self.restore_button_color(a_button)
401
+
402
+ buttons_to_send = []
403
+
404
+ if self.pref.get("run_state"):
405
+ if self.current_widget == "callsign":
406
+ if len(self.callsign.text()) < 3:
407
+ self.make_button_green(self.esm_dict["CQ"])
408
+ buttons_to_send.append(self.esm_dict["CQ"])
409
+ elif len(self.callsign.text()) > 2:
410
+ self.make_button_green(self.esm_dict["HISCALL"])
411
+ self.make_button_green(self.esm_dict["EXCH"])
412
+ buttons_to_send.append(self.esm_dict["HISCALL"])
413
+ buttons_to_send.append(self.esm_dict["EXCH"])
414
+
415
+ elif self.current_widget in ["other_2"]:
416
+ if self.other_2.text() == "":
417
+ self.make_button_green(self.esm_dict["AGN"])
418
+ buttons_to_send.append(self.esm_dict["AGN"])
419
+ else:
420
+ self.make_button_green(self.esm_dict["QRZ"])
421
+ buttons_to_send.append(self.esm_dict["QRZ"])
422
+ buttons_to_send.append("LOGIT")
423
+
424
+ if with_enter is True and bool(len(buttons_to_send)):
425
+ for button in buttons_to_send:
426
+ if button:
427
+ if button == "LOGIT":
428
+ self.save_contact()
429
+ continue
430
+ self.process_function_key(button)
431
+ else:
432
+ if self.current_widget == "callsign":
433
+ if len(self.callsign.text()) > 2:
434
+ self.make_button_green(self.esm_dict["MYCALL"])
435
+ buttons_to_send.append(self.esm_dict["MYCALL"])
436
+
437
+ elif self.current_widget in ["other_2"]:
438
+ if self.other_2.text() == "":
439
+ self.make_button_green(self.esm_dict["AGN"])
440
+ buttons_to_send.append(self.esm_dict["AGN"])
441
+ else:
442
+ self.make_button_green(self.esm_dict["EXCH"])
443
+ buttons_to_send.append(self.esm_dict["EXCH"])
444
+ buttons_to_send.append("LOGIT")
445
+
446
+ if with_enter is True and bool(len(buttons_to_send)):
447
+ for button in buttons_to_send:
448
+ if button:
449
+ if button == "LOGIT":
450
+ self.save_contact()
451
+ continue
452
+ self.process_function_key(button)
@@ -358,3 +358,94 @@ def cabrillo(self, file_encoding):
358
358
 
359
359
  def recalculate_mults(self):
360
360
  """Recalculates multipliers after change in logged qso."""
361
+
362
+
363
+ def process_esm(self, new_focused_widget=None, with_enter=False):
364
+ """ESM State Machine"""
365
+
366
+ # self.pref["run_state"]
367
+
368
+ # -----===== Assigned F-Keys =====-----
369
+ # self.esm_dict["CQ"]
370
+ # self.esm_dict["EXCH"]
371
+ # self.esm_dict["QRZ"]
372
+ # self.esm_dict["AGN"]
373
+ # self.esm_dict["HISCALL"]
374
+ # self.esm_dict["MYCALL"]
375
+ # self.esm_dict["QSOB4"]
376
+
377
+ # ----==== text fields ====----
378
+ # self.callsign
379
+ # self.sent
380
+ # self.receive
381
+ # self.other_1
382
+ # self.other_2
383
+
384
+ if new_focused_widget is not None:
385
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
386
+
387
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
388
+
389
+ for a_button in [
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
+ if a_button is not None:
399
+ self.restore_button_color(a_button)
400
+
401
+ buttons_to_send = []
402
+
403
+ if self.pref.get("run_state"):
404
+ if self.current_widget == "callsign":
405
+ if len(self.callsign.text()) < 3:
406
+ self.make_button_green(self.esm_dict["CQ"])
407
+ buttons_to_send.append(self.esm_dict["CQ"])
408
+ elif len(self.callsign.text()) > 2:
409
+ self.make_button_green(self.esm_dict["HISCALL"])
410
+ self.make_button_green(self.esm_dict["EXCH"])
411
+ buttons_to_send.append(self.esm_dict["HISCALL"])
412
+ buttons_to_send.append(self.esm_dict["EXCH"])
413
+
414
+ elif self.current_widget in ["other_2"]:
415
+ if self.other_2.text() == "":
416
+ self.make_button_green(self.esm_dict["AGN"])
417
+ buttons_to_send.append(self.esm_dict["AGN"])
418
+ else:
419
+ self.make_button_green(self.esm_dict["QRZ"])
420
+ buttons_to_send.append(self.esm_dict["QRZ"])
421
+ buttons_to_send.append("LOGIT")
422
+
423
+ if with_enter is True and bool(len(buttons_to_send)):
424
+ for button in buttons_to_send:
425
+ if button:
426
+ if button == "LOGIT":
427
+ self.save_contact()
428
+ continue
429
+ self.process_function_key(button)
430
+ else:
431
+ if self.current_widget == "callsign":
432
+ if len(self.callsign.text()) > 2:
433
+ self.make_button_green(self.esm_dict["MYCALL"])
434
+ buttons_to_send.append(self.esm_dict["MYCALL"])
435
+
436
+ elif self.current_widget in ["other_2"]:
437
+ if self.other_2.text() == "":
438
+ self.make_button_green(self.esm_dict["AGN"])
439
+ buttons_to_send.append(self.esm_dict["AGN"])
440
+ else:
441
+ self.make_button_green(self.esm_dict["EXCH"])
442
+ buttons_to_send.append(self.esm_dict["EXCH"])
443
+ buttons_to_send.append("LOGIT")
444
+
445
+ if with_enter is True and bool(len(buttons_to_send)):
446
+ for button in buttons_to_send:
447
+ if button:
448
+ if button == "LOGIT":
449
+ self.save_contact()
450
+ continue
451
+ self.process_function_key(button)
@@ -362,3 +362,94 @@ def cabrillo(self, file_encoding):
362
362
 
363
363
  def recalculate_mults(self):
364
364
  """Recalculates multipliers after change in logged qso."""
365
+
366
+
367
+ def process_esm(self, new_focused_widget=None, with_enter=False):
368
+ """ESM State Machine"""
369
+
370
+ # self.pref["run_state"]
371
+
372
+ # -----===== Assigned F-Keys =====-----
373
+ # self.esm_dict["CQ"]
374
+ # self.esm_dict["EXCH"]
375
+ # self.esm_dict["QRZ"]
376
+ # self.esm_dict["AGN"]
377
+ # self.esm_dict["HISCALL"]
378
+ # self.esm_dict["MYCALL"]
379
+ # self.esm_dict["QSOB4"]
380
+
381
+ # ----==== text fields ====----
382
+ # self.callsign
383
+ # self.sent
384
+ # self.receive
385
+ # self.other_1
386
+ # self.other_2
387
+
388
+ if new_focused_widget is not None:
389
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
390
+
391
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
392
+
393
+ for a_button in [
394
+ self.esm_dict["CQ"],
395
+ self.esm_dict["EXCH"],
396
+ self.esm_dict["QRZ"],
397
+ self.esm_dict["AGN"],
398
+ self.esm_dict["HISCALL"],
399
+ self.esm_dict["MYCALL"],
400
+ self.esm_dict["QSOB4"],
401
+ ]:
402
+ if a_button is not None:
403
+ self.restore_button_color(a_button)
404
+
405
+ buttons_to_send = []
406
+
407
+ if self.pref.get("run_state"):
408
+ if self.current_widget == "callsign":
409
+ if len(self.callsign.text()) < 3:
410
+ self.make_button_green(self.esm_dict["CQ"])
411
+ buttons_to_send.append(self.esm_dict["CQ"])
412
+ elif len(self.callsign.text()) > 2:
413
+ self.make_button_green(self.esm_dict["HISCALL"])
414
+ self.make_button_green(self.esm_dict["EXCH"])
415
+ buttons_to_send.append(self.esm_dict["HISCALL"])
416
+ buttons_to_send.append(self.esm_dict["EXCH"])
417
+
418
+ elif self.current_widget in ["other_2"]:
419
+ if self.other_2.text() == "":
420
+ self.make_button_green(self.esm_dict["AGN"])
421
+ buttons_to_send.append(self.esm_dict["AGN"])
422
+ else:
423
+ self.make_button_green(self.esm_dict["QRZ"])
424
+ buttons_to_send.append(self.esm_dict["QRZ"])
425
+ buttons_to_send.append("LOGIT")
426
+
427
+ if with_enter is True and bool(len(buttons_to_send)):
428
+ for button in buttons_to_send:
429
+ if button:
430
+ if button == "LOGIT":
431
+ self.save_contact()
432
+ continue
433
+ self.process_function_key(button)
434
+ else:
435
+ if self.current_widget == "callsign":
436
+ if len(self.callsign.text()) > 2:
437
+ self.make_button_green(self.esm_dict["MYCALL"])
438
+ buttons_to_send.append(self.esm_dict["MYCALL"])
439
+
440
+ elif self.current_widget in ["other_2"]:
441
+ if self.other_2.text() == "":
442
+ self.make_button_green(self.esm_dict["AGN"])
443
+ buttons_to_send.append(self.esm_dict["AGN"])
444
+ else:
445
+ self.make_button_green(self.esm_dict["EXCH"])
446
+ buttons_to_send.append(self.esm_dict["EXCH"])
447
+ buttons_to_send.append("LOGIT")
448
+
449
+ if with_enter is True and bool(len(buttons_to_send)):
450
+ for button in buttons_to_send:
451
+ if button:
452
+ if button == "LOGIT":
453
+ self.save_contact()
454
+ continue
455
+ self.process_function_key(button)
@@ -360,3 +360,94 @@ def cabrillo(self, file_encoding):
360
360
 
361
361
  def recalculate_mults(self):
362
362
  """Recalculates multipliers after change in logged qso."""
363
+
364
+
365
+ def process_esm(self, new_focused_widget=None, with_enter=False):
366
+ """ESM State Machine"""
367
+
368
+ # self.pref["run_state"]
369
+
370
+ # -----===== Assigned F-Keys =====-----
371
+ # self.esm_dict["CQ"]
372
+ # self.esm_dict["EXCH"]
373
+ # self.esm_dict["QRZ"]
374
+ # self.esm_dict["AGN"]
375
+ # self.esm_dict["HISCALL"]
376
+ # self.esm_dict["MYCALL"]
377
+ # self.esm_dict["QSOB4"]
378
+
379
+ # ----==== text fields ====----
380
+ # self.callsign
381
+ # self.sent
382
+ # self.receive
383
+ # self.other_1
384
+ # self.other_2
385
+
386
+ if new_focused_widget is not None:
387
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
388
+
389
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
390
+
391
+ for a_button in [
392
+ self.esm_dict["CQ"],
393
+ self.esm_dict["EXCH"],
394
+ self.esm_dict["QRZ"],
395
+ self.esm_dict["AGN"],
396
+ self.esm_dict["HISCALL"],
397
+ self.esm_dict["MYCALL"],
398
+ self.esm_dict["QSOB4"],
399
+ ]:
400
+ if a_button is not None:
401
+ self.restore_button_color(a_button)
402
+
403
+ buttons_to_send = []
404
+
405
+ if self.pref.get("run_state"):
406
+ if self.current_widget == "callsign":
407
+ if len(self.callsign.text()) < 3:
408
+ self.make_button_green(self.esm_dict["CQ"])
409
+ buttons_to_send.append(self.esm_dict["CQ"])
410
+ elif len(self.callsign.text()) > 2:
411
+ self.make_button_green(self.esm_dict["HISCALL"])
412
+ self.make_button_green(self.esm_dict["EXCH"])
413
+ buttons_to_send.append(self.esm_dict["HISCALL"])
414
+ buttons_to_send.append(self.esm_dict["EXCH"])
415
+
416
+ elif self.current_widget in ["other_2"]:
417
+ if self.other_2.text() == "":
418
+ self.make_button_green(self.esm_dict["AGN"])
419
+ buttons_to_send.append(self.esm_dict["AGN"])
420
+ else:
421
+ self.make_button_green(self.esm_dict["QRZ"])
422
+ buttons_to_send.append(self.esm_dict["QRZ"])
423
+ buttons_to_send.append("LOGIT")
424
+
425
+ if with_enter is True and bool(len(buttons_to_send)):
426
+ for button in buttons_to_send:
427
+ if button:
428
+ if button == "LOGIT":
429
+ self.save_contact()
430
+ continue
431
+ self.process_function_key(button)
432
+ else:
433
+ if self.current_widget == "callsign":
434
+ if len(self.callsign.text()) > 2:
435
+ self.make_button_green(self.esm_dict["MYCALL"])
436
+ buttons_to_send.append(self.esm_dict["MYCALL"])
437
+
438
+ elif self.current_widget in ["other_2"]:
439
+ if self.other_2.text() == "":
440
+ self.make_button_green(self.esm_dict["AGN"])
441
+ buttons_to_send.append(self.esm_dict["AGN"])
442
+ else:
443
+ self.make_button_green(self.esm_dict["EXCH"])
444
+ buttons_to_send.append(self.esm_dict["EXCH"])
445
+ buttons_to_send.append("LOGIT")
446
+
447
+ if with_enter is True and bool(len(buttons_to_send)):
448
+ for button in buttons_to_send:
449
+ if button:
450
+ if button == "LOGIT":
451
+ self.save_contact()
452
+ continue
453
+ self.process_function_key(button)
@@ -441,3 +441,113 @@ def cabrillo(self, file_encoding):
441
441
 
442
442
  def recalculate_mults(self):
443
443
  """Recalculates multipliers after change in logged qso."""
444
+
445
+
446
+ def process_esm(self, new_focused_widget=None, with_enter=False):
447
+ """ESM State Machine"""
448
+
449
+ # self.pref["run_state"]
450
+
451
+ # -----===== Assigned F-Keys =====-----
452
+ # self.esm_dict["CQ"]
453
+ # self.esm_dict["EXCH"]
454
+ # self.esm_dict["QRZ"]
455
+ # self.esm_dict["AGN"]
456
+ # self.esm_dict["HISCALL"]
457
+ # self.esm_dict["MYCALL"]
458
+ # self.esm_dict["QSOB4"]
459
+
460
+ # ----==== text fields ====----
461
+ # self.callsign
462
+ # self.sent
463
+ # self.receive
464
+ # self.other_1
465
+ # self.other_2
466
+
467
+ if new_focused_widget is not None:
468
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
469
+
470
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
471
+
472
+ for a_button in [
473
+ self.esm_dict["CQ"],
474
+ self.esm_dict["EXCH"],
475
+ self.esm_dict["QRZ"],
476
+ self.esm_dict["AGN"],
477
+ self.esm_dict["HISCALL"],
478
+ self.esm_dict["MYCALL"],
479
+ self.esm_dict["QSOB4"],
480
+ ]:
481
+ if a_button is not None:
482
+ self.restore_button_color(a_button)
483
+
484
+ buttons_to_send = []
485
+
486
+ if self.pref.get("run_state"):
487
+ if self.current_widget == "callsign":
488
+ if len(self.callsign.text()) < 3:
489
+ self.make_button_green(self.esm_dict["CQ"])
490
+ buttons_to_send.append(self.esm_dict["CQ"])
491
+ elif len(self.callsign.text()) > 2:
492
+ self.make_button_green(self.esm_dict["HISCALL"])
493
+ self.make_button_green(self.esm_dict["EXCH"])
494
+ buttons_to_send.append(self.esm_dict["HISCALL"])
495
+ buttons_to_send.append(self.esm_dict["EXCH"])
496
+
497
+ elif self.current_widget in ["other_2"]:
498
+ if self.other_2.text() == "":
499
+ self.make_button_green(self.esm_dict["AGN"])
500
+ buttons_to_send.append(self.esm_dict["AGN"])
501
+ else:
502
+ self.make_button_green(self.esm_dict["QRZ"])
503
+ buttons_to_send.append(self.esm_dict["QRZ"])
504
+ buttons_to_send.append("LOGIT")
505
+
506
+ if with_enter is True and bool(len(buttons_to_send)):
507
+ for button in buttons_to_send:
508
+ if button:
509
+ if button == "LOGIT":
510
+ self.save_contact()
511
+ continue
512
+ self.process_function_key(button)
513
+ else:
514
+ if self.current_widget == "callsign":
515
+ if len(self.callsign.text()) > 2:
516
+ self.make_button_green(self.esm_dict["MYCALL"])
517
+ buttons_to_send.append(self.esm_dict["MYCALL"])
518
+
519
+ elif self.current_widget in ["other_2"]:
520
+ if self.other_2.text() == "":
521
+ self.make_button_green(self.esm_dict["AGN"])
522
+ buttons_to_send.append(self.esm_dict["AGN"])
523
+ else:
524
+ self.make_button_green(self.esm_dict["EXCH"])
525
+ buttons_to_send.append(self.esm_dict["EXCH"])
526
+ buttons_to_send.append("LOGIT")
527
+
528
+ if with_enter is True and bool(len(buttons_to_send)):
529
+ for button in buttons_to_send:
530
+ if button:
531
+ if button == "LOGIT":
532
+ self.save_contact()
533
+ continue
534
+ self.process_function_key(button)
535
+
536
+
537
+ def populate_history_info_line(self):
538
+ result = self.database.fetch_call_history(self.callsign.text())
539
+ if result:
540
+ self.history_info.setText(
541
+ f"{result.get('Call', '')}, {result.get('Name', '')}, {result.get('State', '')}, {result.get('UserText','...')}"
542
+ )
543
+ else:
544
+ self.history_info.setText("")
545
+
546
+
547
+ def check_call_history(self):
548
+ """"""
549
+ result = self.database.fetch_call_history(self.callsign.text())
550
+ if result:
551
+ self.history_info.setText(f"{result.get('UserText','')}")
552
+ if self.other_2.text() == "":
553
+ self.other_2.setText(f"{result.get('State', '')}")
@@ -522,11 +522,102 @@ def ft8_handler(the_packet: dict):
522
522
  ALTEREGO.save_contact()
523
523
 
524
524
 
525
+ def process_esm(self, new_focused_widget=None, with_enter=False):
526
+ """ESM State Machine"""
527
+
528
+ # self.pref["run_state"]
529
+
530
+ # -----===== Assigned F-Keys =====-----
531
+ # self.esm_dict["CQ"]
532
+ # self.esm_dict["EXCH"]
533
+ # self.esm_dict["QRZ"]
534
+ # self.esm_dict["AGN"]
535
+ # self.esm_dict["HISCALL"]
536
+ # self.esm_dict["MYCALL"]
537
+ # self.esm_dict["QSOB4"]
538
+
539
+ # ----==== text fields ====----
540
+ # self.callsign
541
+ # self.sent
542
+ # self.receive
543
+ # self.other_1
544
+ # self.other_2
545
+
546
+ if new_focused_widget is not None:
547
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
548
+
549
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
550
+
551
+ for a_button in [
552
+ self.esm_dict["CQ"],
553
+ self.esm_dict["EXCH"],
554
+ self.esm_dict["QRZ"],
555
+ self.esm_dict["AGN"],
556
+ self.esm_dict["HISCALL"],
557
+ self.esm_dict["MYCALL"],
558
+ self.esm_dict["QSOB4"],
559
+ ]:
560
+ if a_button is not None:
561
+ self.restore_button_color(a_button)
562
+
563
+ buttons_to_send = []
564
+
565
+ if self.pref.get("run_state"):
566
+ if self.current_widget == "callsign":
567
+ if len(self.callsign.text()) < 3:
568
+ self.make_button_green(self.esm_dict["CQ"])
569
+ buttons_to_send.append(self.esm_dict["CQ"])
570
+ elif len(self.callsign.text()) > 2:
571
+ self.make_button_green(self.esm_dict["HISCALL"])
572
+ self.make_button_green(self.esm_dict["EXCH"])
573
+ buttons_to_send.append(self.esm_dict["HISCALL"])
574
+ buttons_to_send.append(self.esm_dict["EXCH"])
575
+
576
+ elif self.current_widget in ["other_2"]:
577
+ if self.other_2.text() == "":
578
+ self.make_button_green(self.esm_dict["AGN"])
579
+ buttons_to_send.append(self.esm_dict["AGN"])
580
+ else:
581
+ self.make_button_green(self.esm_dict["QRZ"])
582
+ buttons_to_send.append(self.esm_dict["QRZ"])
583
+ buttons_to_send.append("LOGIT")
584
+
585
+ if with_enter is True and bool(len(buttons_to_send)):
586
+ for button in buttons_to_send:
587
+ if button:
588
+ if button == "LOGIT":
589
+ self.save_contact()
590
+ continue
591
+ self.process_function_key(button)
592
+ else:
593
+ if self.current_widget == "callsign":
594
+ if len(self.callsign.text()) > 2:
595
+ self.make_button_green(self.esm_dict["MYCALL"])
596
+ buttons_to_send.append(self.esm_dict["MYCALL"])
597
+
598
+ elif self.current_widget in ["other_2"]:
599
+ if self.other_2.text() == "":
600
+ self.make_button_green(self.esm_dict["AGN"])
601
+ buttons_to_send.append(self.esm_dict["AGN"])
602
+ else:
603
+ self.make_button_green(self.esm_dict["EXCH"])
604
+ buttons_to_send.append(self.esm_dict["EXCH"])
605
+ buttons_to_send.append("LOGIT")
606
+
607
+ if with_enter is True and bool(len(buttons_to_send)):
608
+ for button in buttons_to_send:
609
+ if button:
610
+ if button == "LOGIT":
611
+ self.save_contact()
612
+ continue
613
+ self.process_function_key(button)
614
+
615
+
525
616
  def populate_history_info_line(self):
526
617
  result = self.database.fetch_call_history(self.callsign.text())
527
618
  if result:
528
619
  self.history_info.setText(
529
- f"{result.get('Call', '')}, {result.get('Loc1', '')}, {result.get('UserText','...')}"
620
+ f"{result.get('Call', '')}, {result.get('Name', '')}, {result.get('Loc1', '')}, {result.get('UserText','...')}"
530
621
  )
531
622
  else:
532
623
  self.history_info.setText("")
@@ -490,11 +490,102 @@ def ft8_handler(the_packet: dict):
490
490
  ALTEREGO.save_contact()
491
491
 
492
492
 
493
+ def process_esm(self, new_focused_widget=None, with_enter=False):
494
+ """ESM State Machine"""
495
+
496
+ # self.pref["run_state"]
497
+
498
+ # -----===== Assigned F-Keys =====-----
499
+ # self.esm_dict["CQ"]
500
+ # self.esm_dict["EXCH"]
501
+ # self.esm_dict["QRZ"]
502
+ # self.esm_dict["AGN"]
503
+ # self.esm_dict["HISCALL"]
504
+ # self.esm_dict["MYCALL"]
505
+ # self.esm_dict["QSOB4"]
506
+
507
+ # ----==== text fields ====----
508
+ # self.callsign
509
+ # self.sent
510
+ # self.receive
511
+ # self.other_1
512
+ # self.other_2
513
+
514
+ if new_focused_widget is not None:
515
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
516
+
517
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
518
+
519
+ for a_button in [
520
+ self.esm_dict["CQ"],
521
+ self.esm_dict["EXCH"],
522
+ self.esm_dict["QRZ"],
523
+ self.esm_dict["AGN"],
524
+ self.esm_dict["HISCALL"],
525
+ self.esm_dict["MYCALL"],
526
+ self.esm_dict["QSOB4"],
527
+ ]:
528
+ if a_button is not None:
529
+ self.restore_button_color(a_button)
530
+
531
+ buttons_to_send = []
532
+
533
+ if self.pref.get("run_state"):
534
+ if self.current_widget == "callsign":
535
+ if len(self.callsign.text()) < 3:
536
+ self.make_button_green(self.esm_dict["CQ"])
537
+ buttons_to_send.append(self.esm_dict["CQ"])
538
+ elif len(self.callsign.text()) > 2:
539
+ self.make_button_green(self.esm_dict["HISCALL"])
540
+ self.make_button_green(self.esm_dict["EXCH"])
541
+ buttons_to_send.append(self.esm_dict["HISCALL"])
542
+ buttons_to_send.append(self.esm_dict["EXCH"])
543
+
544
+ elif self.current_widget in ["other_2"]:
545
+ if self.other_2.text() == "":
546
+ self.make_button_green(self.esm_dict["AGN"])
547
+ buttons_to_send.append(self.esm_dict["AGN"])
548
+ else:
549
+ self.make_button_green(self.esm_dict["QRZ"])
550
+ buttons_to_send.append(self.esm_dict["QRZ"])
551
+ buttons_to_send.append("LOGIT")
552
+
553
+ if with_enter is True and bool(len(buttons_to_send)):
554
+ for button in buttons_to_send:
555
+ if button:
556
+ if button == "LOGIT":
557
+ self.save_contact()
558
+ continue
559
+ self.process_function_key(button)
560
+ else:
561
+ if self.current_widget == "callsign":
562
+ if len(self.callsign.text()) > 2:
563
+ self.make_button_green(self.esm_dict["MYCALL"])
564
+ buttons_to_send.append(self.esm_dict["MYCALL"])
565
+
566
+ elif self.current_widget in ["other_2"]:
567
+ if self.other_2.text() == "":
568
+ self.make_button_green(self.esm_dict["AGN"])
569
+ buttons_to_send.append(self.esm_dict["AGN"])
570
+ else:
571
+ self.make_button_green(self.esm_dict["EXCH"])
572
+ buttons_to_send.append(self.esm_dict["EXCH"])
573
+ buttons_to_send.append("LOGIT")
574
+
575
+ if with_enter is True and bool(len(buttons_to_send)):
576
+ for button in buttons_to_send:
577
+ if button:
578
+ if button == "LOGIT":
579
+ self.save_contact()
580
+ continue
581
+ self.process_function_key(button)
582
+
583
+
493
584
  def populate_history_info_line(self):
494
585
  result = self.database.fetch_call_history(self.callsign.text())
495
586
  if result:
496
587
  self.history_info.setText(
497
- f"{result.get('Call', '')}, {result.get('Loc1', '')}, {result.get('UserText','...')}"
588
+ f"{result.get('Call', '')}, {result.get('Name', '')}, {result.get('Loc1', '')}, {result.get('UserText','...')}"
498
589
  )
499
590
  else:
500
591
  self.history_info.setText("")
@@ -490,11 +490,102 @@ def ft8_handler(the_packet: dict):
490
490
  ALTEREGO.save_contact()
491
491
 
492
492
 
493
+ def process_esm(self, new_focused_widget=None, with_enter=False):
494
+ """ESM State Machine"""
495
+
496
+ # self.pref["run_state"]
497
+
498
+ # -----===== Assigned F-Keys =====-----
499
+ # self.esm_dict["CQ"]
500
+ # self.esm_dict["EXCH"]
501
+ # self.esm_dict["QRZ"]
502
+ # self.esm_dict["AGN"]
503
+ # self.esm_dict["HISCALL"]
504
+ # self.esm_dict["MYCALL"]
505
+ # self.esm_dict["QSOB4"]
506
+
507
+ # ----==== text fields ====----
508
+ # self.callsign
509
+ # self.sent
510
+ # self.receive
511
+ # self.other_1
512
+ # self.other_2
513
+
514
+ if new_focused_widget is not None:
515
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
516
+
517
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
518
+
519
+ for a_button in [
520
+ self.esm_dict["CQ"],
521
+ self.esm_dict["EXCH"],
522
+ self.esm_dict["QRZ"],
523
+ self.esm_dict["AGN"],
524
+ self.esm_dict["HISCALL"],
525
+ self.esm_dict["MYCALL"],
526
+ self.esm_dict["QSOB4"],
527
+ ]:
528
+ if a_button is not None:
529
+ self.restore_button_color(a_button)
530
+
531
+ buttons_to_send = []
532
+
533
+ if self.pref.get("run_state"):
534
+ if self.current_widget == "callsign":
535
+ if len(self.callsign.text()) < 3:
536
+ self.make_button_green(self.esm_dict["CQ"])
537
+ buttons_to_send.append(self.esm_dict["CQ"])
538
+ elif len(self.callsign.text()) > 2:
539
+ self.make_button_green(self.esm_dict["HISCALL"])
540
+ self.make_button_green(self.esm_dict["EXCH"])
541
+ buttons_to_send.append(self.esm_dict["HISCALL"])
542
+ buttons_to_send.append(self.esm_dict["EXCH"])
543
+
544
+ elif self.current_widget in ["other_2"]:
545
+ if self.other_2.text() == "":
546
+ self.make_button_green(self.esm_dict["AGN"])
547
+ buttons_to_send.append(self.esm_dict["AGN"])
548
+ else:
549
+ self.make_button_green(self.esm_dict["QRZ"])
550
+ buttons_to_send.append(self.esm_dict["QRZ"])
551
+ buttons_to_send.append("LOGIT")
552
+
553
+ if with_enter is True and bool(len(buttons_to_send)):
554
+ for button in buttons_to_send:
555
+ if button:
556
+ if button == "LOGIT":
557
+ self.save_contact()
558
+ continue
559
+ self.process_function_key(button)
560
+ else:
561
+ if self.current_widget == "callsign":
562
+ if len(self.callsign.text()) > 2:
563
+ self.make_button_green(self.esm_dict["MYCALL"])
564
+ buttons_to_send.append(self.esm_dict["MYCALL"])
565
+
566
+ elif self.current_widget in ["other_2"]:
567
+ if self.other_2.text() == "":
568
+ self.make_button_green(self.esm_dict["AGN"])
569
+ buttons_to_send.append(self.esm_dict["AGN"])
570
+ else:
571
+ self.make_button_green(self.esm_dict["EXCH"])
572
+ buttons_to_send.append(self.esm_dict["EXCH"])
573
+ buttons_to_send.append("LOGIT")
574
+
575
+ if with_enter is True and bool(len(buttons_to_send)):
576
+ for button in buttons_to_send:
577
+ if button:
578
+ if button == "LOGIT":
579
+ self.save_contact()
580
+ continue
581
+ self.process_function_key(button)
582
+
583
+
493
584
  def populate_history_info_line(self):
494
585
  result = self.database.fetch_call_history(self.callsign.text())
495
586
  if result:
496
587
  self.history_info.setText(
497
- f"{result.get('Call', '')}, {result.get('Loc1', '')}, {result.get('UserText','...')}"
588
+ f"{result.get('Call', '')}, {result.get('Name', '')}, {result.get('Loc1', '')}, {result.get('UserText','...')}"
498
589
  )
499
590
  else:
500
591
  self.history_info.setText("")
@@ -507,3 +598,6 @@ def check_call_history(self):
507
598
  self.history_info.setText(f"{result.get('UserText','')}")
508
599
  if self.other_2.text() == "":
509
600
  self.other_2.setText(f"{result.get('Loc1', '')}")
601
+
602
+
603
+ # !!Order!!,Call,Name,Loc1,UserText,
@@ -436,11 +436,102 @@ def recalculate_mults(self):
436
436
  trigger_update(self)
437
437
 
438
438
 
439
+ def process_esm(self, new_focused_widget=None, with_enter=False):
440
+ """ESM State Machine"""
441
+
442
+ # self.pref["run_state"]
443
+
444
+ # -----===== Assigned F-Keys =====-----
445
+ # self.esm_dict["CQ"]
446
+ # self.esm_dict["EXCH"]
447
+ # self.esm_dict["QRZ"]
448
+ # self.esm_dict["AGN"]
449
+ # self.esm_dict["HISCALL"]
450
+ # self.esm_dict["MYCALL"]
451
+ # self.esm_dict["QSOB4"]
452
+
453
+ # ----==== text fields ====----
454
+ # self.callsign
455
+ # self.sent
456
+ # self.receive
457
+ # self.other_1
458
+ # self.other_2
459
+
460
+ if new_focused_widget is not None:
461
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
462
+
463
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
464
+
465
+ for a_button in [
466
+ self.esm_dict["CQ"],
467
+ self.esm_dict["EXCH"],
468
+ self.esm_dict["QRZ"],
469
+ self.esm_dict["AGN"],
470
+ self.esm_dict["HISCALL"],
471
+ self.esm_dict["MYCALL"],
472
+ self.esm_dict["QSOB4"],
473
+ ]:
474
+ if a_button is not None:
475
+ self.restore_button_color(a_button)
476
+
477
+ buttons_to_send = []
478
+
479
+ if self.pref.get("run_state"):
480
+ if self.current_widget == "callsign":
481
+ if len(self.callsign.text()) < 3:
482
+ self.make_button_green(self.esm_dict["CQ"])
483
+ buttons_to_send.append(self.esm_dict["CQ"])
484
+ elif len(self.callsign.text()) > 2:
485
+ self.make_button_green(self.esm_dict["HISCALL"])
486
+ self.make_button_green(self.esm_dict["EXCH"])
487
+ buttons_to_send.append(self.esm_dict["HISCALL"])
488
+ buttons_to_send.append(self.esm_dict["EXCH"])
489
+
490
+ elif self.current_widget in ["other_2"]:
491
+ if self.other_2.text() == "":
492
+ self.make_button_green(self.esm_dict["AGN"])
493
+ buttons_to_send.append(self.esm_dict["AGN"])
494
+ else:
495
+ self.make_button_green(self.esm_dict["QRZ"])
496
+ buttons_to_send.append(self.esm_dict["QRZ"])
497
+ buttons_to_send.append("LOGIT")
498
+
499
+ if with_enter is True and bool(len(buttons_to_send)):
500
+ for button in buttons_to_send:
501
+ if button:
502
+ if button == "LOGIT":
503
+ self.save_contact()
504
+ continue
505
+ self.process_function_key(button)
506
+ else:
507
+ if self.current_widget == "callsign":
508
+ if len(self.callsign.text()) > 2:
509
+ self.make_button_green(self.esm_dict["MYCALL"])
510
+ buttons_to_send.append(self.esm_dict["MYCALL"])
511
+
512
+ elif self.current_widget in ["other_2"]:
513
+ if self.other_2.text() == "":
514
+ self.make_button_green(self.esm_dict["AGN"])
515
+ buttons_to_send.append(self.esm_dict["AGN"])
516
+ else:
517
+ self.make_button_green(self.esm_dict["EXCH"])
518
+ buttons_to_send.append(self.esm_dict["EXCH"])
519
+ buttons_to_send.append("LOGIT")
520
+
521
+ if with_enter is True and bool(len(buttons_to_send)):
522
+ for button in buttons_to_send:
523
+ if button:
524
+ if button == "LOGIT":
525
+ self.save_contact()
526
+ continue
527
+ self.process_function_key(button)
528
+
529
+
439
530
  def populate_history_info_line(self):
440
531
  result = self.database.fetch_call_history(self.callsign.text())
441
532
  if result:
442
533
  self.history_info.setText(
443
- f"{result.get('Call', '')}, {result.get('UserText','...')}"
534
+ f"{result.get('Call', '')}, {result.get('Name', '')}, {result.get('State', '')}, {result.get('UserText','...')}"
444
535
  )
445
536
  else:
446
537
  self.history_info.setText("")
@@ -451,7 +542,5 @@ def check_call_history(self):
451
542
  result = self.database.fetch_call_history(self.callsign.text())
452
543
  if result:
453
544
  self.history_info.setText(f"{result.get('UserText','')}")
454
- # if self.other_1.text() == "":
455
- # self.other_1.setText(f"{result.get('CQZone', '')}")
456
- # if self.other_2.text() == "":
457
- # self.other_2.setText(f"{result.get('State', '')}")
545
+ if self.other_2.text() == "":
546
+ self.other_2.setText(f"{result.get('State', '')}")
@@ -436,11 +436,102 @@ def recalculate_mults(self):
436
436
  trigger_update(self)
437
437
 
438
438
 
439
+ def process_esm(self, new_focused_widget=None, with_enter=False):
440
+ """ESM State Machine"""
441
+
442
+ # self.pref["run_state"]
443
+
444
+ # -----===== Assigned F-Keys =====-----
445
+ # self.esm_dict["CQ"]
446
+ # self.esm_dict["EXCH"]
447
+ # self.esm_dict["QRZ"]
448
+ # self.esm_dict["AGN"]
449
+ # self.esm_dict["HISCALL"]
450
+ # self.esm_dict["MYCALL"]
451
+ # self.esm_dict["QSOB4"]
452
+
453
+ # ----==== text fields ====----
454
+ # self.callsign
455
+ # self.sent
456
+ # self.receive
457
+ # self.other_1
458
+ # self.other_2
459
+
460
+ if new_focused_widget is not None:
461
+ self.current_widget = self.inputs_dict.get(new_focused_widget)
462
+
463
+ # print(f"checking esm {self.current_widget=} {with_enter=} {self.pref.get("run_state")=}")
464
+
465
+ for a_button in [
466
+ self.esm_dict["CQ"],
467
+ self.esm_dict["EXCH"],
468
+ self.esm_dict["QRZ"],
469
+ self.esm_dict["AGN"],
470
+ self.esm_dict["HISCALL"],
471
+ self.esm_dict["MYCALL"],
472
+ self.esm_dict["QSOB4"],
473
+ ]:
474
+ if a_button is not None:
475
+ self.restore_button_color(a_button)
476
+
477
+ buttons_to_send = []
478
+
479
+ if self.pref.get("run_state"):
480
+ if self.current_widget == "callsign":
481
+ if len(self.callsign.text()) < 3:
482
+ self.make_button_green(self.esm_dict["CQ"])
483
+ buttons_to_send.append(self.esm_dict["CQ"])
484
+ elif len(self.callsign.text()) > 2:
485
+ self.make_button_green(self.esm_dict["HISCALL"])
486
+ self.make_button_green(self.esm_dict["EXCH"])
487
+ buttons_to_send.append(self.esm_dict["HISCALL"])
488
+ buttons_to_send.append(self.esm_dict["EXCH"])
489
+
490
+ elif self.current_widget in ["other_2"]:
491
+ if self.other_2.text() == "":
492
+ self.make_button_green(self.esm_dict["AGN"])
493
+ buttons_to_send.append(self.esm_dict["AGN"])
494
+ else:
495
+ self.make_button_green(self.esm_dict["QRZ"])
496
+ buttons_to_send.append(self.esm_dict["QRZ"])
497
+ buttons_to_send.append("LOGIT")
498
+
499
+ if with_enter is True and bool(len(buttons_to_send)):
500
+ for button in buttons_to_send:
501
+ if button:
502
+ if button == "LOGIT":
503
+ self.save_contact()
504
+ continue
505
+ self.process_function_key(button)
506
+ else:
507
+ if self.current_widget == "callsign":
508
+ if len(self.callsign.text()) > 2:
509
+ self.make_button_green(self.esm_dict["MYCALL"])
510
+ buttons_to_send.append(self.esm_dict["MYCALL"])
511
+
512
+ elif self.current_widget in ["other_2"]:
513
+ if self.other_2.text() == "":
514
+ self.make_button_green(self.esm_dict["AGN"])
515
+ buttons_to_send.append(self.esm_dict["AGN"])
516
+ else:
517
+ self.make_button_green(self.esm_dict["EXCH"])
518
+ buttons_to_send.append(self.esm_dict["EXCH"])
519
+ buttons_to_send.append("LOGIT")
520
+
521
+ if with_enter is True and bool(len(buttons_to_send)):
522
+ for button in buttons_to_send:
523
+ if button:
524
+ if button == "LOGIT":
525
+ self.save_contact()
526
+ continue
527
+ self.process_function_key(button)
528
+
529
+
439
530
  def populate_history_info_line(self):
440
531
  result = self.database.fetch_call_history(self.callsign.text())
441
532
  if result:
442
533
  self.history_info.setText(
443
- f"{result.get('Call', '')}, {result.get('UserText','...')}"
534
+ f"{result.get('Call', '')}, {result.get('Name', '')}, {result.get('State', '')}, {result.get('UserText','...')}"
444
535
  )
445
536
  else:
446
537
  self.history_info.setText("")
@@ -451,7 +542,5 @@ def check_call_history(self):
451
542
  result = self.database.fetch_call_history(self.callsign.text())
452
543
  if result:
453
544
  self.history_info.setText(f"{result.get('UserText','')}")
454
- # if self.other_1.text() == "":
455
- # self.other_1.setText(f"{result.get('CQZone', '')}")
456
- # if self.other_2.text() == "":
457
- # self.other_2.setText(f"{result.get('State', '')}")
545
+ if self.other_2.text() == "":
546
+ self.other_2.setText(f"{result.get('State', '')}")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: not1mm
3
- Version: 24.11.24
3
+ Version: 24.11.24.1
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
@@ -57,7 +57,7 @@ Requires-Dist: Levenshtein
57
57
  - [Data and RTTY](#data-and-rtty)
58
58
  - [Other not so supported contests](#other-not-so-supported-contests)
59
59
  - [Our Code Contributors ✨](#our-code-contributors-)
60
- - [List of should be working contests, those in bold have ESM](#list-of-should-be-working-contests-those-in-bold-have-esm)
60
+ - [List of should be working contests](#list-of-should-be-working-contests)
61
61
  - [Recent Changes (Polishing the Turd)](#recent-changes-polishing-the-turd)
62
62
  - [Flatpak](#flatpak)
63
63
  - [Installation](#installation)
@@ -203,41 +203,42 @@ generated, 'cause I'm lazy, list of those who've submitted PR's.
203
203
  <img src="https://contrib.rocks/image?repo=mbridak/not1mm" alt="Avatar icons for code contributors." />
204
204
  </a>
205
205
 
206
- ## List of should be working contests, those in bold have ESM
206
+ ## List of should be working contests
207
207
 
208
- - **General Logging** (There are better general loggers like QLog, KLog, CQRLog)
208
+ - General Logging (There are better general loggers like QLog, KLog, CQRLog)
209
209
  - 10 10 Fall CW
210
210
  - 10 10 Spring CW
211
211
  - 10 10 Summer Phone
212
212
  - 10 10 Winter Phone
213
213
  - ARRL 10M
214
- - **ARRL DX CW, SSB**
215
- - **ARRL Field Day**
216
- - **ARRL Sweepstakes CW, SSB**
214
+ - ARRL DX CW, SSB
215
+ - ARRL Field Day
216
+ - ARRL Sweepstakes CW, SSB
217
217
  - ARRL VHF January, June, September
218
218
  - CQ 160 CW, SSB
219
- - **CQ WPX CW, RTTY, SSB**
220
- - **CQ World Wide CW, RTTY, SSB**
221
- - **CWOps CWT**
222
- - **DARC Xmas**
223
- - **Helvetia**
224
- - **IARU Fieldday R1 CW, SSB**
225
- - **IARU HF**
226
- - **ICWC MST**
227
- - **Japan International DX CW, SSB**
228
- - **K1USN Slow Speed Test**
229
- - **LZ DX**
230
- - **NAQP CW, RTTY, SSB**
231
- - **Phone Weekly Test**
232
- - **RAEM**
233
- - **RAC Canada Day**
234
- - **REF CW, SSB**
235
- - **Stew Perry Topband**
236
- - **Weekly RTTY**
237
- - **Winter Field Day**
219
+ - CQ WPX CW, RTTY, SSB
220
+ - CQ World Wide CW, RTTY, SSB
221
+ - CWOps CWT
222
+ - DARC Xmas
223
+ - Helvetia
224
+ - IARU Fieldday R1 CW, SSB
225
+ - IARU HF
226
+ - ICWC MST
227
+ - Japan International DX CW, SSB
228
+ - K1USN Slow Speed Test
229
+ - LZ DX
230
+ - NAQP CW, RTTY, SSB
231
+ - Phone Weekly Test
232
+ - RAEM
233
+ - RAC Canada Day
234
+ - REF CW, SSB
235
+ - Stew Perry Topband
236
+ - Weekly RTTY
237
+ - Winter Field Day
238
238
 
239
239
  ## Recent Changes (Polishing the Turd)
240
240
 
241
+ - [24-11-24-1] Add ESM to CQ160, ARRL VHF, ARRL 10M, 10 10 contests.
241
242
  - [24-11-24] Added ESM to IARU HF and FieldDay.
242
243
  - [24-11-23] Made macros per contest.
243
244
  - [24-11-21] Merged PR from alduhoo setting CW Speed via rigctld, Added ESM and call history support for General Logging.
@@ -114,26 +114,26 @@ 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=ddqZBy3zla-M51uDFW1jsP62ZHX9yMyEpfCi9nVIfjg,49
117
+ not1mm/lib/version.py,sha256=uBO1Roo-PFKigitnWdUnKJL8D3eTKW67UwefYD28x7I,51
118
118
  not1mm/lib/versiontest.py,sha256=8vDNptuBBunn-1IGkjNaquehqBYUJyjrPSF8Igmd4_Y,1286
119
- not1mm/plugins/10_10_fall_cw.py,sha256=r2YkRNiMS_3hXrf3zeiijzW24roilyIXnwXwTd07X8M,11208
120
- not1mm/plugins/10_10_spring_cw.py,sha256=EBBcVgxDhtAK7cGHq9LOU6LhY9vSqlk7GEkApn3KRYM,11213
121
- not1mm/plugins/10_10_summer_phone.py,sha256=k_60LEPV7rS_QBGo_pfndkudgKPc59jgMPLTW_TqYMM,11326
122
- not1mm/plugins/10_10_winter_phone.py,sha256=8BPLi40zmHu86R3NmM0r2bdfjQN9e4tAXSqxcKEdeTE,11225
119
+ not1mm/plugins/10_10_fall_cw.py,sha256=AsvB2VUd6Qb2_FzZkSBkSd1_qeP8Dt-B-exF1Pzb9tk,14469
120
+ not1mm/plugins/10_10_spring_cw.py,sha256=nA4v0oqlp-ivvKqNPakb19I-wE_ElhvH5bCzDRx00JU,14474
121
+ not1mm/plugins/10_10_summer_phone.py,sha256=FNcTQoyZCeAW2i3SKYYDZWuJS1vmk1CO4XO1MAZe8rQ,14587
122
+ not1mm/plugins/10_10_winter_phone.py,sha256=NRAKgu4oYzrpUtjUKWgCfZQf3b85sdVe9oyl-yD6kJo,14486
123
123
  not1mm/plugins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
- not1mm/plugins/arrl_10m.py,sha256=CEumvlyRzW63uIPZKnUQ-vWWj_NEi_qItRRojHZxRrM,14047
124
+ not1mm/plugins/arrl_10m.py,sha256=-stuBD3DCdlWctxE9bWEeznZrgIfNw7VcMIE1ZmsfMo,17942
125
125
  not1mm/plugins/arrl_dx_cw.py,sha256=1epTIf9TjeUCjYlpRDU54Ig3lJdXa2e5JZI9SCGE080,17400
126
126
  not1mm/plugins/arrl_dx_ssb.py,sha256=IEZ6tlP9stW3Mdr5_qTBS77hjAUU43IpagyPjr0eqaQ,17403
127
127
  not1mm/plugins/arrl_field_day.py,sha256=YEyXr1Ytllq12sCj54erOba0wrblwb0_bq51gj75OIQ,16478
128
128
  not1mm/plugins/arrl_rtty_ru.py,sha256=npOuf7OxcF0BbvpXJuPOLwf0-wONbDlGW7_B_-BSFz0,7370
129
129
  not1mm/plugins/arrl_ss_cw.py,sha256=HlUsDqyPAZh9VuatcGJ7EDst4qfS6f35yv_nPPzYW7M,17162
130
130
  not1mm/plugins/arrl_ss_phone.py,sha256=_QWnat0y2LLoKTP9RF-sZBqxWxHNrKiPYopBpq8kKTs,16498
131
- not1mm/plugins/arrl_vhf_jan.py,sha256=1KhMR4vAPz1Dan5K3Q5DyIlKB_imOj8aq1EIcV4BtHg,16494
132
- not1mm/plugins/arrl_vhf_jun.py,sha256=yAv0d6d27UlcY-lPHiGptCEF9zWIkNh4ChYeTH9CHH0,15586
133
- not1mm/plugins/arrl_vhf_sep.py,sha256=6pNU5yV2NrGnkOEEJcbXsgKJa8VsIwxKvfBayzSM3U0,15586
131
+ not1mm/plugins/arrl_vhf_jan.py,sha256=tNBrm8Zi_-FgRvu16sySVVnKVpHBYkqdbTlTCWmnOhc,19781
132
+ not1mm/plugins/arrl_vhf_jun.py,sha256=2F1L19A6FKFN6w3Xt5U_ueXoUdtEAqToIyy4n0vQ_h0,18873
133
+ not1mm/plugins/arrl_vhf_sep.py,sha256=bjZNHIAYMaPnhCJ31O5pso-4yHcoURo3DAkL8Y_ZTto,18912
134
134
  not1mm/plugins/canada_day.py,sha256=WxtIm0xl8vd8XUDHX3VQnjDzRhPXM1UR92Qjg99NLMY,15245
135
- not1mm/plugins/cq_160_cw.py,sha256=mAMGyS0M02i-pJ6-aH3iDIUk55dSGDjsDJ6WEXEetro,15351
136
- not1mm/plugins/cq_160_ssb.py,sha256=GSjoKLx8bktrGa0EWu3tvx3N3IjWKWNpzWFdH2t2E3Y,15394
135
+ not1mm/plugins/cq_160_cw.py,sha256=1oEI6lH-LUZSY-BSlbWsXnc4F5dmIF8bVBewy10k4Jc,18555
136
+ not1mm/plugins/cq_160_ssb.py,sha256=_0bkvq0KvSdyTBhkqJ35VqXuaWIaDNmBGE1aQ-cxQz8,18598
137
137
  not1mm/plugins/cq_wpx_cw.py,sha256=H1H4xL-hx0sqU_8fSQYnNzO0ZcOLV-KSOQT9wPvIva0,17843
138
138
  not1mm/plugins/cq_wpx_rtty.py,sha256=nT2lMdAM1pRu2jNKI4FpkGei9kEGX0XcF_24FkL0lnY,20662
139
139
  not1mm/plugins/cq_wpx_ssb.py,sha256=Zjga12w_ISh4aZjCYZbpwN0x0032Prc8p7aIGI7HJFQ,16410
@@ -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.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,,
165
+ not1mm-24.11.24.1.dist-info/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
166
+ not1mm-24.11.24.1.dist-info/METADATA,sha256=T3IWvMbJdNfDupnG8GamPM_W7zCSfHo_z2dzcuONA1E,36616
167
+ not1mm-24.11.24.1.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
168
+ not1mm-24.11.24.1.dist-info/entry_points.txt,sha256=pMcZk_0dxFgLkcUkF0Q874ojpwOmF3OL6EKw9LgvocM,47
169
+ not1mm-24.11.24.1.dist-info/top_level.txt,sha256=0YmTxEcDzQlzXub-lXASvoLpg_mt1c2thb5cVkDf5J4,7
170
+ not1mm-24.11.24.1.dist-info/RECORD,,