1BUG: KLog needs to update the Entity DB is shown on every start 2 3KLog should update ALWAYS when receiving from LoTW the QSL_LOTW_rcvd or add the QSO if not in local log. 4 5Review the process after Setup 6 7 8TODO: Integrate HAMQTH https://www.hamqth.com/developers.php 9TODO:- New feature: Regional Award support: #include "setuppages/setuppagesubdivisions.h" 10 11TODO: Stat More frequently worked calls: "select log.call, count(log.call) from log group by log.call ORDER BY count(log.call) DESC" 12TODO: Stat Number of different callsigns 13TODO: Find "duplicated" QSOs QUERY=> SELECT call, bandid, modeid, substr(qso_date, 1, 15), COUNT(*) c FROM log GROUP BY call, bandid, modeid, substr(qso_date, 1, 15) HAVING c>1 14TODO: Find duplicate queries: 15select call, qso_date from log where datetime('2007-07-22 09:45:00', '-5 minutes')< datetime(qso_date) AND datetime('2007-07-22 09:49:00', '+5 minutes') > datetime(qso_date) 16select call, qso_date, bandid, modeid, COUNT(*) c from log where datetime('2010-10-31 19:20:00', '-5 minutes')< datetime(qso_date) AND datetime('2010-10-31 19:20:00', '+5 minutes') > datetime(qso_date) group by call having c>1 17 18 19RC-BUGS: 20 21 22TODO: Check if dxccStatusWidget in logwindow is useful and remove it if not. 23NONE 24 25TODO: New feature: KLog can now control a rotator through PSTRotator. 26TODO: UI: Added a DXCC summary obtained from the Tools menu. 27 28TBD - 0.9.8 29Hamlib: COMports in Windows must follow the format: \\.\com14 for ports highet than 9 but it works also for lower so ALL should be managed that way. 30 31For next release: 32TODO: - Some warnings removed from compilation time. 33TODO: - The log can be now updated with a LoTW ADIF file import. 34TODO: - Isolate the Awards tab and create a widget with it. 35TODO: - ADD A TIP ON the DXCC tab stating Prefix, CQ, ITU & Bearing. 36TODO: Rework the band & mode hash tables to optimize queries (not sql queries) 37TODO: Rework the DXCC & WAZ hash table sto optimize queries (not SQL queries) 38 39TODO: Import LOTW (MainWindow::slotADIFImport) 40TODO: Remove the Querys from void SetupPageLogs:: 41 42TODO: Create a Widget with the WAZ status (copying the DXCC Status widget) 43 44Working: 45TODO: ADD A TIP ON the DXCC tab stating Prefix, CQ, ITU & Bearing 46 47 48TODO: Check how to implement qInstallMessageHandler 49SAT DB: https://db.satnogs.org/api/ 50 51This is a kind of roadmap for KLog development. 52It is not fixed... new features may be prioritized or not added without any notice ;-) 53Feel free to request any roadmap change if you have any suggestion. 54 55TODO: To add the support to import/export the following ADIF fields that are already existing in DB 56 AWARD_SUBMITTED 57 AWARD_GRANTED 58 DARC_DOK 59 FISTS 60 FISTS_CC 61 GUEST_OP 62 "hrdlog_qso_upload_date VARCHAR(10)," 63 "hrdlog_qso_upload_status VARCHAR(1)," 64 "my_antenna VARCHAR," 65 "my_dxcc INTEGER, " 66 "my_fists INTEGER, " 67 "my_itu_zone INTEGER ," 68 "my_postal_code VARCHAR ," 69 "my_sota_ref VARCHAR, " 70 "my_usaca_counties VARCHAR, " 71 "my_vucc_grids VARCHAR, " 72 "silent_key VARCHAR(1), " 73 "region VARCHAR, " 74 "qrzcom_qso_upload_date VARCHAR(10), " 75 "qrzcom_qso_upload_status VARCHAR(1), " 76 "skcc VARCHAR, " 77 "sota_ref VARCHAR, " 78 "uksmg INTEGER, " 79 "usaca_counties VARCHAR, " 80 "ve_prov VARCHAR, " 81 "vucc_grids VARCHAR, " 82 83 84TODO: Add a warning or periodically ADIF export so data is backup 85TODO: Create a function to look for QSO without a DXCC and ask the user to confirm the DXCC. 86TODO: Isolate the QSO input tab and create a widget with it. 87TODO: Isolate the Main QRZ box and create a widget with it. 88TODO: Isolate the Awards tab and create a widget with it. 89TODO: Add an option to save the DXCluster data to a file (file based on name or so) 90 91TODO: Think if it is possible to create a function in the Widgets(i.e. MainWindowInputQSL) to read the data and 92 enter it in the DB automatically when the user clicks on "enter" 93 It would help to "isolate" it and make it more "independant" 94 95TODO: Review the color management in MainWindowInputOthers::setIOTA (and maybe others) (completewithPrevious of MainWindow) 96TODO: Check if in mainwindow (read formUI and modify the eQSL/LOTW REC/SENT values are correct 97 98TODO: If no QSL sent via or rec via are defined, KLog shows as direct? It should be bureau 99 100 101TODO: Add a cheking to the list of bureaus and propose the bureau for QSL via when there is an existing one and propose direct when no bureau is existing. 102 (http://www.iaru.org/qsl-bureaus.html) 103 104TODO: Define band limits for CW/SSB/RTTY... so when a click on the cluster is done, the right mode is proposed. 105TODO: Add in the setup/Band/mode a combobox showing all the active band/modes so the user can select the default band/mode from that list. 106 107BUG: Potential bug 108Double click on a QSO in the log on the Mode/Band... you can modifify the value. As it is a double click, the QSO goes to edit and ... 109Check if: 110 - Only selected modes can be shown there. 111 - If double click on the log we only "quick modify" directly in the log, without editing. 112 113BUG: (TNX JL3OXR) 114The DB is not storing if the time is stored in UTC or local so that info is lost. 115If a user changes the configuration from time to time, the user will loose the real time when the QSO was made. 116Solution: 117 - Consider the DB is only storing UTC QSO. 118 - Read config from user (or simply ask) and convert all the DB to UTC if needed (only one time when new version is installed to upgrade the DB) 119 Always: 120 - When entering data from the UI, check the user config and store only UTC time. 121 - TODO: Think how to show the data in the log or search box as data is stored in UTC and showed directly (specially log widget) 122 - Solution: Maybe changing the header to UTC may solve this and provide the info to the user that UTC is being used for storage 123 It may be weird for the user to see the log in UTC when working in local time... in the rest of the functions... 124 125 126TODO: void DXCCStatusWidget::slotRefreshButtonClicked()//TODO: Define a way to show the status of the selected log or all the logs in the DB 127 128BUG: Optimize the KLog start 129BUG: If logbook.dat is not existing but klogrc it is, KLog does not start. 130 131TODO: Add a tip on the DXCC Status showing some info: bearing, DXCC status (worked or not...) 132TODO: Add a link or action on DXCCStatus items to doubleclick and search the QSOs that provide such status. 133 134TODO: Show the flag of the worked QRZ on the top right,close to the Entity Name 135 136TODO: Add the flags to the DXCluster 137TODO: Click on an Entity name will select all the QSO of that Entity on the search box 138 139Debian: 140 141Time in UTC: (not to be fixed) 142https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=654325 143 144 145BUG: Check the options that are marked in QSL when rightbutton. 146i.e.: Is myQSL sent marked as requested when it should be the DX-QSL? 147 148TODO GUI: To add the CQ/ITU box or make them editable 149TODO: checkIfNewBandOrMode() is not being used. Code should be removed... 150 151BUG: 152Clublog: 153void MainWindow::slotQRZReturnPressed() 154_x = elogClublog->deleteQSO(clublogPrevQSO); 155_x = elogClublog->sendQSO(dataProxy->getClubLogRealTimeFromId(modifyingQSO)) 156It runs so fast and not serialized that at the end sometimes the QSO is deleted but not created afterwards 157 158 159<CLUBLOG> 160TODO: Add the possibility to the user to select from the setup a call to be used in clublog or use the one comming from the station callsign lineedit 161TODO: In slotQsoUploadFinished, if QSO is not uploaded. mark it as not uploaded in the log 162 163If qsoToEdit, nothing is modified and OK. (Clublog returns QSO DUPE) 164Again qsoToEdit, nothing is modified and OK (Clublogs returns QSO DROPPED, and QSO is dropped!) 165 166TODO: Check the values that clublog is returning to manage errors and show messages to the user 167TODO: To add the possibility to upload a modified QSO to clublog. 168TODO: If there is an error in password/username or whatever, disable clublog in KLog 169 170TODO: Upload a logfile to clublog 171// Ideas: https://code.google.com/p/datacod-qt-tools/source/browse/upcoder/uploader.h 172// https://code.google.com/p/datacod-qt-tools/source/browse/upcoder/uploader.cpp 173 174TODO: Define a maximum QSO upload rate to clublog to avoid excesive API usage. 175</CLUBLOG> 176 177 178KLog 0.9.4 179TODO: Some Entities are not recognized by ARRL (I, IG9, IT9 are the same ARRL id entities but different ones). Maybe I should not be working 180 with ARRLid or maybe I should detect special ones and "id+10000" so >10000 ids are special ones. 181 182 183KLog 0.9.3 184TODO: Support CQ WW SSB (Including Cabrillo Import/Export) 185TODO: Support CQ WW CW (Including Cabrillo Import/Export) 186 187KLog 0.9.4 188TODO: Hamlib support (Linux). 189 190KLog 0.9.5 191TODO: Support CQ WPX SSB (Including Cabrillo Import/Export) 192TODO: Support CQ WPX CW (Including Cabrillo Import/Export) 193 194KLog 0.9.6 195WORLDEDITOR Dialog 196TODO: WorldEditor is not updated when the CTY.CSV file is updated 197TODO: World Editor: Create a way to add an entity. 198TODO: World Editor: Create a way to remove an entity. 199TODO: World Editor: Create a way to edit an entity. 200 201KLog 0.9.7 202TODO: Integrate with www.clublog.org (http://www.clublog.org/docs/pages/viewpage.action?pageId=1638482) 203 204KLog 0.9.8 205TODO: Integrate with eqsl.cc 206https://www.eqsl.cc/qslcard/ADIFContentSpecs.cfm 207 208KLog 0.9.9 209TODO: Server to log all the QSO in real time (through the network) from N1MM 210 http://n1mm.hamdocs.com/tiki-index.php?page=UDP+Broadcasts&structure=N1MM+Logger+Documentation 211 212KLog 0.9.10 213TODO: Integrate with FLIGI real time logging (req by AA5VI) 214 215KLog 0.9.11 - Cluster release 216TODO: DXCluster: Add flags to the DXCluster widget 217TODO: DXCluster: UI: Modify the DX-Cluster tab to show the data in a table?: DX de/Freq/DX/Comment/Time/Loc 218TODO: DXCluster: Add the DXMarathon information to the spots 219TODO: DXCLuster: Create a band map (including a "to-be-worked") 220TODO: Working on the dxCluster: Tool to save the DXCluster in a file (for further analysis). 221 222KLog 0.9.12 223TODO: Add the awards functionality (to manage awa files, TPEA, WAS, ...) 224 225KLog 0.9.13 226TODO: Mobile interface. Create a mobile UI. 227 228<BUGS> 229TODO: Check if the data has been modified (only memory) and save the data! 230TODO BUG: When modifying allow deleting data (as in KLog 0.5.8) 231DONE BUG: Worked DXCC and WAZ are not updated until confirmed :-? 232</BUGS> 233 234TODO: When importing an ADIF file with several logs, create automatically the logs as detected. 235TODO: HelpHelpDialog 236TODO: HelpAboutDialog 237 238TODO: setuppagelogs.cpp 239TODO: Remove references to DataBase from all classes except DataProxySQLite 240 241TODO: DXCluster: Lines that are not a DX should not be in another color than default. 242TODO: Add a default DX Cluster server 243 244TODO: Make a tool to mark and export QSO from the right button. (i.e. To mark several QSO to print and export the ADIF file with just those QSO) 245 246TODO: Add all the Entity Info to the slotClear to clear everything. 247TODO: Add a list of previous QSO with the same station, if any. (Done in the search box) 248 249TODO: Create something like a void Awards::setAwardsOfAllQSO to read ALL QSO and set the Awards at once instead of adding one QSO per QSO 250 251 252KLOG TODO: 253TODO: To create a function tha runs the log and marks "N" if QSL has not been sent or received. 254TODO: Create a setup page to configure a default prop_mode per band (ie 6m = ES) 255 256TODO: CTY.DAT update 257TODO: Award tabs: center/bold tabs 258TODO: Add export to cabrillo to the logfile 259 260 261 262SETUP: 263TODO: Show progress when doing actions 264TODO: Open this file when opening 265TODO: DXCLuster: Show HF activity 266TODO: DXCLuster: Show WARC 267TODO: DXCLuster: Show VHUF 268TODO: DXCLuster: Show confirmed 269TODO: DXCLuster: Show SSB 270TODO: DXCLuster: Show CW 271TODO: DXCLuster: Show Ann/full 272TODO: DXCLuster: Show WCY 273TODO: DXCLuster: Show WWV 274TODO: DXCLuster: Double click on a spot, add it to log 275TODO: DXCLuster: Add Cluster servers 276DONE: TODO: Colors: Confirmed, Worked, Needed band, New, Default 277 278TODO: Require mandatory fields in all QSO 279 280TODO: Awards: Add Award 281TODO: Awards: Remove Award 282 283===================== 284<SATELLITE SUPPORT> 285TODO: Sats: Create a way to update the list of supported satellites. Maybe another tab in the setup dialog as the World Editor 286TODO: Sats: https://www.eqsl.cc/qslcard/ADIFContentSpecs.cfm 287TODO: Sats: https://lotw.arrl.org/lotw/faq#sats 288 289TODO: Sat Modes: 290http://www.amsat.org/amsat/intro/sats_faq.html#RTFToC5 291http://www.sckans.edu/~sireland/radio/amsat.html 292 293A - This mode requires a 2 meter SSB/CW transmitter and a 10 meter SSB/CW receiver and supports CW and voice. 294B - This mode requires a 70 cm SSB/CW transmitter and a 2 meter SSB/CW receiver and supports CW and voice. Some satellites also support RTTY and SSTV in this mode. 295J -> V Uplink and U downlink 296JA - This mode stands for J Analog and requires a 2 meter SSB/CW transmitter and a 70 cm SSB/CW receiver and supports CW, voice. 297JD - This mode stands for J Digital and requires a 2 meter FM transmitter and a 70 cm SSB/CW receiver and supports packet. 298 299K - This mode requires a 15 meter SSB/CW transmitter and a 10 meter SSB/CW receiver and supports CW and voice. This mode is unique in that it can be done with a simple HF rig. 300S - This mode requires a 70 cm SSB/CW transmitter and a 2.4 GHz SSB/CW receiver and supports CW and voice. Many people use a 2.4 GHz to 2 meter converter with a 2 meter SSB/CW receiver instead of buying a 2.4 GHz SSB/CW receiver. 301T - This mode requires a 15 meter SSB/CW transmitter and a 2 meter SSB/CW receiver and supports CW and voice. 302KT, KA, BS, Some satellites have dual modes that operate simultaneously. For example, AO-13 can operate in mode BS which means that it can do both mode B and mode S simultaneously. Other common dual modes are KT and KA. 303 304Mode V 305Mode U 306Mode U/V -> B 307</SATELLITE SUPPORT> 308 309TODO: Code a way to sort the bands/modes in the "setuppagebandsmodes.cpp 310 311TODO: Create an "updateKLog" class to manage all the release updates 312so there is a way to detect the version of KLog and upgrade the DB to the latest. 313 314 315TODO: 316The following fields may add information, even if the qsl has not been rcvd/sent 317<QSL_RCVD_VIA:1>B <QSL_SENT_VIA:1>B 318 319TODO: showStatusOfDXCC should be executed when band change. 320 321TODO: Add color support: messages for slotQRZTextChanged 322 323TODO: SetupPageColors: Check the style in the buttons as the rounds are lost when I change the color!! 324 325TODO: MainWindow::processConfigLine: add support for the cluster data. 326TODO: Check when to connect the DXCluster and when no, it tries twice or more... 327 328TODO: Awards: make a function to calculate the total. 329 330TODO: Color support: Add needed, worked, confirmed, neutral colors to the configuration dialog. 331TODO: Color support: Support the bar when a QRZ is entered. 332TODO: Color support: Calculate a color for the log. 333 334TODO: World::getDXStatus: Calculate the algorithm to know the different status for a DXCC (confirmed, worked, confirmed in another band, ,...) 335TODO: World:: Maybe the color should be returned from the World class 336 337TODO: Check the readDataFromUI. QSO are not added when in contest. 338TODO: Check that New Log, Open, ... somewhere the log table is removed from the DB! 339 340TODO: The confirmed WAZ number is not properly calculated. 341 342TODO: GUI: Add in the input box a combobox to change the CQZ 343TODO: GUI: Add in the input box a combobox to change the ITUZ 344 345 346TODO: In CQWWSSB, when editing QSO the SRX, Points, multiplier, ... are not sent to the edit so after "OK", those data are lost. 347 348TODO: MainWindow::slotQsoDeleteFromLog: Add the CALL to the message before detele a QSO. 349 350TODO: Search GUI: add multi-selection QSO to do the same actions inmultiple QSO. 351 352TODO: When importing ADIF, update the logview sometimes... just to show the progress. 353TODO: When importing ADIF: Only shows the ProgresDialog when the number is low >1000 <14000 investigate 354TODO: Import Cabrillo 355 356 357TODO: To check how can I order the columns in the log or in the search QTableView. Now the order depends only on the order of the SQL table. 358 359TODO: When modifying a cell directly in the log, it is possible to select a mode/band that is not actually active in the configuration. 360 361TODO: Slot: If (only)eqsl/lotw is sent/rec, the QSL_RCVD_VIA should be E 362 363TODO: Code a Tool to get statistcs for the contests, some kind of post contest tool. 364 http://www.qsl.net/3v4-002/Contests/2011%20CQ-WW-SSB%203V8SS/index.htm 365 366TODO: Be able to send scores to: http://www.cqcontest.ru/help/developers.jsp 367 368TODO: Create an update CTY.DAT without overwriting the current data. Just Adding and correcting (asking) if data is already there but different. 369TODO: Create an export CTY.DAT file to create a CTY.DAT file with ALL the data in the current "world". 370 371 372 373FILEMANAGER 374TODO: adifLogExportToFile: Count the marked QSO and adjust the numberOfQsos 375TODO: FileManager::adifReadLog: Optimize the dialog (maybe updating only each 100 or as in KLog) 376TODO: FileManager::adifReadLog: Add a semaphore/lock or similar to avoid running the same method twice or more at the same time... or at least the same file. 377 It seems that now it "serializes" the import... 378TODO: Check that FileManager::adifLogExportToFile is exporting ALL the DB fields. 379TODO: FileManager::adifLogExportToFile code a progress dialog for exporting. 380TODO: When importing ADIF: Check if all the QSO have all the mandatory fields and warn the user if not. 381 382Optimization: The ADIF import is very slow. Optimization is recommended. 383 384 385IMPROVEMENT: Improve the result of the log printing. 386 387DONE: TODO: Working on the DB version update functions 388DONE: MainWindow::showAwards Remove "empty CQZ" when counting to avoid having 41 CQ zones 389DONE: Code the color configuration for status of an entity (needed/worked/confirmed). 390DONE: Color support: Calculate a color for the search results. 391DONE: Color support: Calculate a color for the DXCluster. 392DONE: TODO: Colors: Reconfigure the colors needs KLog to be restarted. 393DONE: Working on the dxCluster: Color support, identify the different kind of lines... DX de, normal spots, comments, ... 394DONE: Working on setAwardDXCC: When adding if a pair is already entered but we are going to add a confirmed status, modify it. 395DONE: Right click on log to show a to edit QSO. 396DONE: Right click on log to show a QSL received. 397DONE: Right click on log to remove a QSO. 398DONE: Right click on log to show a QSL sent. 399TODO: Right click on search to remove a QSO. 400DONE: Right click on search to show a QSL reception. 401DONE: Right click on search to show a QSL sent. 402DONE: Right click on search to show to edit QSO. 403DONE: Added a select/unselect all button to the search QSO tab. 404DONE: Search QSO to send 405DONE: Add a button to export to ADIF the content of searchResultsTreeWidget 406 407DONE: When importing ADIF, if the CQZ/ITUZ/DXCC is empty, calculate and add it. 408DONE: Not export ADIF fields if "N": 409DONE: Print the log. 410DONE: TODO: Time in UTC 411DONE: TODO: Log in real time 412DONE: Double click on cluster to select 413DONE: TODO: When double clicking on a DX-Spot, frequency should be also copied to inputbox 414DONE: TODO: When a DX-Spot is selected, the DX-Entity and status should be shown. 415DONE: TODO: DXCluster: Connect, disconnect and connect again does not work 416DONE: TODO: Add a field in Mainwindow to manage RX_PWR 417DONE: TODO: slotclearbuttons->Colors to default 418DONE: GUI: Add in the input box a combobox to change the DXCC 419 420