not1mm 25.6.4__tar.gz → 25.6.5__tar.gz

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.
Files changed (199) hide show
  1. {not1mm-25.6.4 → not1mm-25.6.5}/PKG-INFO +1 -1
  2. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/dxcc_tracker.py +3 -3
  3. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/version.py +1 -1
  4. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/statistics.py +39 -13
  5. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm.egg-info/PKG-INFO +1 -1
  6. {not1mm-25.6.4 → not1mm-25.6.5}/pyproject.toml +1 -1
  7. {not1mm-25.6.4 → not1mm-25.6.5}/LICENSE +0 -0
  8. {not1mm-25.6.4 → not1mm-25.6.5}/README.md +0 -0
  9. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/__init__.py +0 -0
  10. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/__main__.py +0 -0
  11. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/bandmap.py +0 -0
  12. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/checkwindow.py +0 -0
  13. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/JetBrainsMono-Thin.ttf +0 -0
  14. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/MASTER.SCP +0 -0
  15. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/about.ui +0 -0
  16. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/alpha bravo charlie delta.txt +0 -0
  17. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/bandmap.ui +0 -0
  18. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/check.png +0 -0
  19. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/checkwindow.ui +0 -0
  20. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/cloud_green.png +0 -0
  21. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/cloud_red.png +0 -0
  22. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/configuration.ui +0 -0
  23. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/contests.sql +0 -0
  24. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/cty.json +0 -0
  25. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/cwmacros.txt +0 -0
  26. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/donors.html +0 -0
  27. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/dxcc_tracker.ui +0 -0
  28. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/editcontact.ui +0 -0
  29. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/editmacro.ui +0 -0
  30. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/greendot.png +0 -0
  31. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/k6gte-not1mm.desktop +0 -0
  32. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/k6gte.not1mm-128.png +0 -0
  33. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/k6gte.not1mm-32.png +0 -0
  34. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/k6gte.not1mm-64.png +0 -0
  35. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/logwindow.ui +0 -0
  36. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/logwindowx.ui +0 -0
  37. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/main.ui +0 -0
  38. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/new_contest.ui +0 -0
  39. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/not1mm.html +0 -0
  40. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/opon.ui +0 -0
  41. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/0.wav +0 -0
  42. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/1.wav +0 -0
  43. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/2.wav +0 -0
  44. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/3.wav +0 -0
  45. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/4.wav +0 -0
  46. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/5.wav +0 -0
  47. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/6.wav +0 -0
  48. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/7.wav +0 -0
  49. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/73.wav +0 -0
  50. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/8.wav +0 -0
  51. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/9.wav +0 -0
  52. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/a.wav +0 -0
  53. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/again.wav +0 -0
  54. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/b.wav +0 -0
  55. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/c.wav +0 -0
  56. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/contest.wav +0 -0
  57. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/cq.wav +0 -0
  58. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/cq2.wav +0 -0
  59. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/d.wav +0 -0
  60. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/e.wav +0 -0
  61. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/f.wav +0 -0
  62. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/g.wav +0 -0
  63. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/h.wav +0 -0
  64. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/i.wav +0 -0
  65. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/j.wav +0 -0
  66. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/k.wav +0 -0
  67. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/k6gte.wav +0 -0
  68. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/l.wav +0 -0
  69. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/m.wav +0 -0
  70. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/mynumber.wav +0 -0
  71. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/n.wav +0 -0
  72. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/nil.wav +0 -0
  73. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/o.wav +0 -0
  74. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/p.wav +0 -0
  75. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/q.wav +0 -0
  76. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/r.wav +0 -0
  77. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/roger.wav +0 -0
  78. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/s.wav +0 -0
  79. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/space.wav +0 -0
  80. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/t.wav +0 -0
  81. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/thankyou.wav +0 -0
  82. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/thankyouqrz.wav +0 -0
  83. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/u.wav +0 -0
  84. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/v.wav +0 -0
  85. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/w.wav +0 -0
  86. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/x.wav +0 -0
  87. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/y.wav +0 -0
  88. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/yourcall.wav +0 -0
  89. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/phonetics/z.wav +0 -0
  90. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/pickcontest.ui +0 -0
  91. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/radio_green.png +0 -0
  92. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/radio_grey.png +0 -0
  93. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/radio_red.png +0 -0
  94. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/ratewindow.ui +0 -0
  95. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/reddot.png +0 -0
  96. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/rttymacros.txt +0 -0
  97. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/settings.ui +0 -0
  98. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/splash.png +0 -0
  99. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/ssbmacros.txt +0 -0
  100. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/statistics.ui +0 -0
  101. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/data/vfo.ui +0 -0
  102. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/fsutils.py +0 -0
  103. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/__init__.py +0 -0
  104. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/about.py +0 -0
  105. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/cat_interface.py +0 -0
  106. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/cwinterface.py +0 -0
  107. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/database.py +0 -0
  108. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/edit_contact.py +0 -0
  109. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/edit_macro.py +0 -0
  110. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/edit_opon.py +0 -0
  111. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/edit_station.py +0 -0
  112. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/fldigi_sendstring.py +0 -0
  113. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/ft8_watcher.py +0 -0
  114. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/ham_utility.py +0 -0
  115. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/lookup.py +0 -0
  116. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/multicast.py +0 -0
  117. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/n1mm.py +0 -0
  118. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/new_contest.py +0 -0
  119. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/plugin_common.py +0 -0
  120. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/select_contest.py +0 -0
  121. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/settings.py +0 -0
  122. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/super_check_partial.py +0 -0
  123. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lib/versiontest.py +0 -0
  124. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/logwindow.py +0 -0
  125. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/lookupservice.py +0 -0
  126. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/10_10_fall_cw.py +0 -0
  127. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/10_10_spring_cw.py +0 -0
  128. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/10_10_summer_phone.py +0 -0
  129. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/10_10_winter_phone.py +0 -0
  130. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/__init__.py +0 -0
  131. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ari_40_80.py +0 -0
  132. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ari_dx.py +0 -0
  133. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_10m.py +0 -0
  134. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_160m.py +0 -0
  135. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_dx_cw.py +0 -0
  136. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_dx_ssb.py +0 -0
  137. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_field_day.py +0 -0
  138. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_rtty_ru.py +0 -0
  139. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_ss_cw.py +0 -0
  140. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_ss_phone.py +0 -0
  141. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_vhf_jan.py +0 -0
  142. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_vhf_jun.py +0 -0
  143. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/arrl_vhf_sep.py +0 -0
  144. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/canada_day.py +0 -0
  145. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_160_cw.py +0 -0
  146. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_160_ssb.py +0 -0
  147. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_wpx_cw.py +0 -0
  148. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_wpx_rtty.py +0 -0
  149. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_wpx_ssb.py +0 -0
  150. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_ww_cw.py +0 -0
  151. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_ww_rtty.py +0 -0
  152. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cq_ww_ssb.py +0 -0
  153. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/cwt.py +0 -0
  154. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/darc_vhf.py +0 -0
  155. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/darc_xmas.py +0 -0
  156. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ea_majistad_cw.py +0 -0
  157. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ea_majistad_ssb.py +0 -0
  158. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ea_rtty.py +0 -0
  159. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/es_field_day.py +0 -0
  160. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/es_open.py +0 -0
  161. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/general_logging.py +0 -0
  162. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/helvetia.py +0 -0
  163. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/iaru_fieldday_r1_cw.py +0 -0
  164. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/iaru_fieldday_r1_ssb.py +0 -0
  165. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/iaru_hf.py +0 -0
  166. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/icwc_mst.py +0 -0
  167. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/jidx_cw.py +0 -0
  168. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/jidx_ph.py +0 -0
  169. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/k1usn_sst.py +0 -0
  170. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/labre_rs_digi.py +0 -0
  171. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/lz-dx.py +0 -0
  172. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/naqp_cw.py +0 -0
  173. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/naqp_rtty.py +0 -0
  174. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/naqp_ssb.py +0 -0
  175. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/phone_weekly_test.py +0 -0
  176. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/raem.py +0 -0
  177. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/randomgram.py +0 -0
  178. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ref_cw.py +0 -0
  179. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ref_ssb.py +0 -0
  180. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/sac_cw.py +0 -0
  181. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/sac_ssb.py +0 -0
  182. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/spdx.py +0 -0
  183. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/stew_perry_topband.py +0 -0
  184. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/ukeidx.py +0 -0
  185. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/vhf_sprint.py +0 -0
  186. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/weekly_rtty.py +0 -0
  187. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/plugins/winter_field_day.py +0 -0
  188. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/radio.py +0 -0
  189. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/ratewindow.py +0 -0
  190. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/rtc_service.py +0 -0
  191. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/test.py +0 -0
  192. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/vfo.py +0 -0
  193. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm/voice_keying.py +0 -0
  194. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm.egg-info/SOURCES.txt +0 -0
  195. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm.egg-info/dependency_links.txt +0 -0
  196. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm.egg-info/entry_points.txt +0 -0
  197. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm.egg-info/requires.txt +0 -0
  198. {not1mm-25.6.4 → not1mm-25.6.5}/not1mm.egg-info/top_level.txt +0 -0
  199. {not1mm-25.6.4 → not1mm-25.6.5}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: not1mm
3
- Version: 25.6.4
3
+ Version: 25.6.5
4
4
  Summary: NOT1MM Logger
5
5
  Author-email: Michael Bridak <michael.bridak@gmail.com>
6
6
  License: GPL-3.0-or-later
@@ -49,7 +49,7 @@ class DXCCWindow(QDockWidget):
49
49
  self.model = CustomSqlModel(self)
50
50
  query = QSqlQuery(self.db)
51
51
  query.prepare(
52
- """
52
+ f"""
53
53
  SELECT CountryPrefix,
54
54
  SUM(CASE WHEN Band = 1.8 THEN 1 ELSE 0 END) AS '160m',
55
55
  SUM(CASE WHEN Band = 3.5 THEN 1 ELSE 0 END) AS '80m',
@@ -58,7 +58,7 @@ class DXCCWindow(QDockWidget):
58
58
  SUM(CASE WHEN Band = 21.0 THEN 1 ELSE 0 END) AS '15m',
59
59
  SUM(CASE WHEN Band = 28.0 THEN 1 ELSE 0 END) AS '10m',
60
60
  COUNT(*) AS Total
61
- FROM DXLOG
61
+ FROM DXLOG where ContestNR = {self.pref.get('contest', 1)}
62
62
  GROUP BY CountryPrefix
63
63
  ORDER BY Total DESC
64
64
  """
@@ -121,7 +121,7 @@ class DXCCWindow(QDockWidget):
121
121
  print("Error: Could not open database")
122
122
  return
123
123
  self.setWindowTitle(
124
- f"Log Display - {self.pref.get('current_database', 'ham.db')}"
124
+ f"DXCC Tracker - {self.pref.get('current_database', 'ham.db')}"
125
125
  )
126
126
 
127
127
  def msg_from_main(self, msg):
@@ -1,3 +1,3 @@
1
1
  """It's the version"""
2
2
 
3
- __version__ = "25.6.4"
3
+ __version__ = "25.6.5"
@@ -107,27 +107,41 @@ class StatsWindow(QDockWidget):
107
107
  for band in result:
108
108
  query = f"select count(*) as qs, count(DISTINCT(Call)) as calls, sum(Points) as points from DXLOG where ContestNR = {self.database.current_contest} and Band = '{band['band']}';"
109
109
  result = self.database.exec_sql(query)
110
- item = QtWidgets.QTableWidgetItem(str(band.get("band", "")))
110
+ item = QtWidgets.QTableWidgetItem(
111
+ str(band.get("band", "")).replace("None", "")
112
+ )
111
113
  item.setTextAlignment(0x0002)
112
114
  self.tableWidget.setItem(row, 0, item)
113
- item = QtWidgets.QTableWidgetItem(str(result.get("qs", "0")))
115
+ item = QtWidgets.QTableWidgetItem(
116
+ str(result.get("qs", "0")).replace("None", "0")
117
+ )
114
118
  item.setTextAlignment(0x0002)
115
119
  self.tableWidget.setItem(row, 1, item)
116
- item = QtWidgets.QTableWidgetItem(str(result.get("calls", "0")))
120
+ item = QtWidgets.QTableWidgetItem(
121
+ str(result.get("calls", "0")).replace("None", "0")
122
+ )
117
123
  item.setTextAlignment(0x0002)
118
124
  self.tableWidget.setItem(row, 2, item)
119
- item = QtWidgets.QTableWidgetItem(str(result.get("points", "0")))
125
+ item = QtWidgets.QTableWidgetItem(
126
+ str(result.get("points", "0")).replace("None", "0")
127
+ )
120
128
  item.setTextAlignment(0x0002)
121
129
  self.tableWidget.setItem(row, 6, item)
122
130
  query = f"select sum(sortedmode.mode == 'CW') as CW, sum(sortedmode.mode == 'PH') as PH, sum(sortedmode.mode == 'DI') as DI from (select CASE WHEN Mode IN ('LSB','USB','SSB','FM','AM') THEN 'PH' WHEN Mode IN ('CW','CW-R') THEN 'CW' WHEN Mode IN ('FT8','FT4','RTTY','PSK31','FSK441','MSK144','JT65','JT9','Q65') THEN 'DI' ELSE 'OTHER' END mode from DXLOG where ContestNR = {self.database.current_contest} and Band = '{band['band']}') as sortedmode;"
123
131
  result = self.database.exec_sql(query)
124
- item = QtWidgets.QTableWidgetItem(str(result.get("CW", "0")))
132
+ item = QtWidgets.QTableWidgetItem(
133
+ str(result.get("CW", "0")).replace("None", "0")
134
+ )
125
135
  item.setTextAlignment(0x0002)
126
136
  self.tableWidget.setItem(row, 3, item)
127
- item = QtWidgets.QTableWidgetItem(str(result.get("PH", "0")))
137
+ item = QtWidgets.QTableWidgetItem(
138
+ str(result.get("PH", "0")).replace("None", "0")
139
+ )
128
140
  item.setTextAlignment(0x0002)
129
141
  self.tableWidget.setItem(row, 4, item)
130
- item = QtWidgets.QTableWidgetItem(str(result.get("DI", "0")))
142
+ item = QtWidgets.QTableWidgetItem(
143
+ str(result.get("DI", "0")).replace("None", "0")
144
+ )
131
145
  item.setTextAlignment(0x0002)
132
146
  self.tableWidget.setItem(row, 5, item)
133
147
 
@@ -137,25 +151,37 @@ class StatsWindow(QDockWidget):
137
151
  item = QtWidgets.QTableWidgetItem("TOTAL")
138
152
  item.setTextAlignment(0x0002)
139
153
  self.tableWidget.setItem(row, 0, item)
140
- item = QtWidgets.QTableWidgetItem(str(result.get("qs", "0")))
154
+ item = QtWidgets.QTableWidgetItem(
155
+ str(result.get("qs", "0")).replace("None", "0")
156
+ )
141
157
  item.setTextAlignment(0x0002)
142
158
  self.tableWidget.setItem(row, 1, item)
143
- item = QtWidgets.QTableWidgetItem(str(result.get("calls", "0")))
159
+ item = QtWidgets.QTableWidgetItem(
160
+ str(result.get("calls", "0")).replace("None", "0")
161
+ )
144
162
  item.setTextAlignment(0x0002)
145
163
  self.tableWidget.setItem(row, 2, item)
146
- item = QtWidgets.QTableWidgetItem(str(result.get("points", "0")))
164
+ item = QtWidgets.QTableWidgetItem(
165
+ str(result.get("points", "0")).replace("None", "0")
166
+ )
147
167
  item.setTextAlignment(0x0002)
148
168
  self.tableWidget.setItem(row, 6, item)
149
169
 
150
170
  query = f"select sum(sortedmode.mode == 'CW') as CW, sum(sortedmode.mode == 'PH') as PH, sum(sortedmode.mode == 'DI') as DI from (select CASE WHEN Mode IN ('LSB','USB','SSB','FM','AM') THEN 'PH' WHEN Mode IN ('CW','CW-R') THEN 'CW' WHEN Mode In ('FT8','FT4','RTTY','PSK31','FSK441','MSK144','JT65','JT9','Q65') THEN 'DI' ELSE 'OTHER' END mode from DXLOG where ContestNR = {self.database.current_contest}) as sortedmode;"
151
171
  result = self.database.exec_sql(query)
152
- item = QtWidgets.QTableWidgetItem(str(result.get("CW", "0")))
172
+ item = QtWidgets.QTableWidgetItem(
173
+ str(result.get("CW", "0")).replace("None", "0")
174
+ )
153
175
  item.setTextAlignment(0x0002)
154
176
  self.tableWidget.setItem(row, 3, item)
155
- item = QtWidgets.QTableWidgetItem(str(result.get("PH", "0")))
177
+ item = QtWidgets.QTableWidgetItem(
178
+ str(result.get("PH", "0")).replace("None", "0")
179
+ )
156
180
  item.setTextAlignment(0x0002)
157
181
  self.tableWidget.setItem(row, 4, item)
158
- item = QtWidgets.QTableWidgetItem(str(result.get("DI", "0")))
182
+ item = QtWidgets.QTableWidgetItem(
183
+ str(result.get("DI", "0")).replace("None", "0")
184
+ )
159
185
  item.setTextAlignment(0x0002)
160
186
  self.tableWidget.setItem(row, 5, item)
161
187
  self.tableWidget.resizeColumnsToContents()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: not1mm
3
- Version: 25.6.4
3
+ Version: 25.6.5
4
4
  Summary: NOT1MM Logger
5
5
  Author-email: Michael Bridak <michael.bridak@gmail.com>
6
6
  License: GPL-3.0-or-later
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "not1mm"
7
- version = "25.6.4"
7
+ version = "25.6.5"
8
8
  description = "NOT1MM Logger"
9
9
  license = { text = "GPL-3.0-or-later" }
10
10
  readme = "README.md"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes