Wykres commitów

447 Commity (master)

Autor SHA1 Wiadomość Data
Christian T. Jacobs b29eebe0b4 Convert from dict_keys to list. 2016-05-28 16:24:37 +01:00
Christian T. Jacobs 9ddaa56b73 Make this option clearer. 2016-05-28 14:19:19 +01:00
Christian T. Jacobs 8b5ea87b79 Flake8 fixes. 2016-01-27 18:15:06 +00:00
Christian T. Jacobs c993704e84 Make the code pep8 compliant, using the autopep8 tool. Note that we are ignoring the following: E501,F403,E226,E402,W503. 2016-01-27 16:23:09 +00:00
Christian Jacobs 1c47846289 Keep the 'Add Record' dialog open after adding a new QSO, if the user wants this. 2016-01-24 21:29:35 +00:00
Christian Jacobs 98f27a36e2 Collect contacts together by month in the bar chart. 2016-01-24 16:48:10 +00:00
Christian Jacobs 6de0a1f451 Change to have_matplotlib. 2016-01-24 15:33:15 +00:00
Christian Jacobs 56b476e66d Only try to plot statistics if the necessary matplotlib module exists. 2016-01-24 15:31:15 +00:00
Christian Jacobs 23a325367c Handle unspecified modes. 2016-01-24 15:22:33 +00:00
Christian Jacobs cc436c4a42 Handle empty logs. 2016-01-24 15:19:51 +00:00
Christian Jacobs f03f31c65b Hook the statistics up to the preferences. 2016-01-24 15:12:14 +00:00
Christian Jacobs c610b9f13e Only show the progress up to the end of the current month. 2016-01-24 15:05:02 +00:00
Christian Jacobs 76f038a39b Replot statistics for a user-specified year. 2016-01-24 14:50:42 +00:00
Christian Jacobs a5f4d80654 Only perform one SQL query. 2016-01-24 02:08:40 +00:00
Christian Jacobs 608007d616 Add a combo box to select which year we want PyQSO to generate statistics for. 2016-01-24 02:03:48 +00:00
Christian Jacobs 3d40955b36 Make the statistics an option in the Preferences. 2016-01-23 00:26:55 +00:00
Christian Jacobs 524c6a0054 Use matplotlib.dates to do the plotting of the QSO count. 2016-01-22 20:36:50 +00:00
Christian Jacobs b9ce2153de Started to add graphs to the Summary page of the logbook. 2016-01-11 19:29:42 +00:00
Christian Jacobs 07274c6f60 Use gtk3cairo backend. 2016-01-11 19:29:34 +00:00
Christian Jacobs 7d941ce2fe Write configuration files to ~/.config to keep the user's home directory uncluttered. 2015-11-29 22:25:41 +00:00
Christian Jacobs 2a66389dc3 Store the bookmarks file path in BOOKMARKS_FILE. 2015-11-28 16:55:28 +00:00
Christian Jacobs efbc51d6bf Use "label=" in MenuItem to avoid deprecation warnings. 2015-11-28 16:42:43 +00:00
Christian Jacobs d6588c5761 Implement bookmarking. 2015-11-28 16:41:23 +00:00
Christian Jacobs 362c9fa5e5 Split up the "Connect" menu into "New..." and "From Bookmark". 2015-11-28 14:53:33 +00:00
Christian Jacobs e1e4784a07 Let's call this the command box instead. 2015-11-28 14:42:57 +00:00
Christian Jacobs 6f7d15cb33 Use a MenuBar instead of a row of buttons in the DX cluster tool. 2015-11-28 14:36:18 +00:00
Christian Jacobs 4164977747 If there is an encoding error when writing/reading a character to/from an ADIF file, then replace the character with a replacement marker. 2015-11-23 20:22:35 +00:00
Christian Jacobs 8a70fbc369 Unit tests for the DXCluster class. 2015-11-22 23:04:02 +00:00
Christian Jacobs 05664b4f04 Moar docstrings. 2015-11-22 23:03:48 +00:00
Christian Jacobs ea8777841a Added more unit tests for qrz.com and hamqth.com lookups. 2015-11-22 21:54:20 +00:00
Christian Jacobs f9fdc32891 Fixed Telnet DX cluster functionality following the move to Python 3. This involved encoding/decoding from str/bytes. 2015-11-22 01:16:08 +00:00
Christian Jacobs 2fcdc4833c Remove old print statement. 2015-11-22 00:50:51 +00:00
Christian Jacobs dcd94634e8 Remove the deprecated_mode method. 2015-11-22 00:50:29 +00:00
Christian Jacobs 4b1f83eeef Comment updates. 2015-11-22 00:46:56 +00:00
Christian Jacobs 905c352af0 Included deprecated MODE values, and included the 630m band in the BANDS list.
Also bumped the ADIF version to 3.0.4.
2015-11-22 00:39:06 +00:00
Christian Jacobs e957ae5864 Fixes following the move to Python 3. Also added a default Submode field in the Preferences dialog. 2015-11-17 01:03:59 +00:00
Christian Jacobs ef9ca21ccb Add a Submode field to the Record dialog. 2015-11-17 01:03:50 +00:00
Christian Jacobs de01ceefdf Added empty strings to the tuples containing the SUBMODES. Also added a method to 'update' a deprecated mode. 2015-11-17 01:02:11 +00:00
Christian Jacobs 07954c18a8 Updated the list of MODES and their corresponding SUBMODES. Note that this list is now actually a dictionary - see the comment. 2015-11-16 21:26:14 +00:00
njohnsn fc94c8d511 Convert to Python 3 using 2to3.
Also update Travis CI settings for Python 3, add new package dependencies and update the documentation.
2015-11-05 00:23:19 +00:00
Christian Jacobs ce900209b0 Generalise the callsign lookup button and documentation, since PyQSO now also supports hamqth.com. 2015-10-04 00:52:53 +01:00
Christian Jacobs 165edd5023 Bumped the version number to 0.3(-dev). 2015-10-04 00:32:00 +01:00
Christian Jacobs 45abb28e38 Improved docstrings. 2015-10-04 00:16:55 +01:00
Christian Jacobs bf26af984d Merge pull request #32 from dnet/cleanup2015930
Cleanup
2015-10-01 18:37:38 +01:00
Christian Jacobs 794d999587 lastrowid only gets set *after* issuing an INSERT statement, but PyQSO needs the index of the last row beforehand. Therefore, determine the index of the last row using a SELECT statement instead. 2015-10-01 18:27:11 +01:00
András Veres-Szentkirályi 7d8b702bce auxiliary_dialogs: extracted common dialog code 2015-09-30 12:03:07 +02:00
András Veres-Szentkirályi e92c294dd4 use datetime.strftime instead of manual formatting 2015-09-30 11:53:40 +02:00
András Veres-Szentkirályi 9094d197e9 simplified increment syntax 2015-09-30 11:48:44 +02:00
András Veres-Szentkirályi 5054c99e7c simplified logbook loading 2015-09-30 11:43:49 +02:00
András Veres-Szentkirályi 3f9434cd2e removed unread variables 2015-09-30 10:57:11 +02:00
András Veres-Szentkirályi 500ca5977a removed unused imports 2015-09-30 10:56:56 +02:00
Christian Jacobs 37685c9a4c When calling add_record with multiple records in a list, insert all the records in one go using executemany.
This seems to bring a significant performance benefit, and addresses issue #29.
2015-08-12 00:58:00 +01:00
Christian Jacobs c6002fbd7d Match *.ADI files too. 2015-08-11 17:31:51 +01:00
Christian Jacobs 819a6a0e47 Another debug statement involving the merging of the COMMENT and NOTES fields. 2015-05-04 23:14:27 +01:00
Christian Jacobs c1d4333662 Compile the regular expression before using it in the loop over tokens. 2015-05-04 23:11:03 +01:00
Christian Jacobs 5e1376eddb Merge the COMMENT field with the NOTES field, if desired and applicable. 2015-05-04 23:00:42 +01:00
Christian Jacobs dc32c2c23d Add an ADIF tab to the Preferences dialog. 2015-04-29 22:45:58 +01:00
Christian Jacobs 7529accdeb Change logging level to warning here. 2015-04-29 21:53:54 +01:00
Christian Jacobs 6a90e9a0bd Change logging level to warning here. 2015-04-29 21:52:18 +01:00
Christian Jacobs 160aa2133d Corrected a typo in a comment. 2015-04-29 16:07:36 +01:00
Christian Jacobs a8083630c7 Look for the 'search' node instead of a 'callsign' node. 2015-04-29 15:59:23 +01:00
Christian Jacobs 3002f2439e Support for callsign lookups using the HamQTH.com database. 2015-04-28 23:04:03 +01:00
Christian Jacobs 1fdfc428a7 More helpful info messages. 2015-04-14 22:09:53 +01:00
Christian Jacobs 2c5b7d9c55 If the GreyLine dependencies are not satisfied, print a warning rather than an error message. 2015-04-14 21:33:18 +01:00
Christian Jacobs edbc9ebdec Add more debugging statements when importing the GreyLine dependencies. 2015-04-14 21:32:42 +01:00
Christian Jacobs 233b996784 Include the total number of QSOs in the Summary page. Addresses issue #23. 2015-04-02 08:57:27 +01:00
Christian Jacobs 3945834450 Display a more helpful error message if the logs fail to load properly. 2015-03-06 23:45:27 +00:00
Christian Jacobs f9b97a6b26 Remove the unnecessary "File:" lines at the top of each .py file. 2015-03-06 23:35:14 +00:00
Christian Jacobs 3cc4f83a22 Added my middle initial. 2015-03-06 23:31:46 +00:00
Christian Jacobs 45cf8fddff Bug fix for the IGNORE_PREFIX_SUFFIX option. The data type that is read in is a string. 2015-03-06 22:33:46 +00:00
Christian Jacobs 94de94c975 Handle any exceptions raised when connecting to the server. 2015-03-03 15:27:32 +00:00
Christian Jacobs b5f72e2ede Fixed the error handling when looking up a callsign that does not have an entry on qrz.com. 2015-03-03 14:31:51 +00:00
Christian Jacobs 209354fcf3 Corrected the indentation of a comment line. 2015-03-01 22:03:43 +00:00
Christian Jacobs 7b3c2634aa Move the code which locates duplicate records into a new method called 'get_duplicates'.
Also added a unit test for this new method.
2015-03-01 21:55:24 +00:00
Christian Jacobs 2bc2ee190d Improve an error message in the GreyLine module. 2015-03-01 14:50:47 +00:00
Christian Jacobs e63184fec8 Temporarily use 'print' instead. 2015-03-01 14:39:24 +00:00
Christian Jacobs 1b9eea5aa6 Print out the matplotlib version in use. 2015-03-01 14:36:27 +00:00
Christian Jacobs 3c5f9ecf43 Print the exception message. 2015-03-01 14:28:47 +00:00
Christian Jacobs dca3ed118c Added unit tests for the Logbook class. 2015-03-01 14:21:18 +00:00
Christian Jacobs c4924447c6 Added some unit tests for the CallsignLookup class. 2015-02-28 23:05:04 +00:00
Christian Jacobs 861c5c4821 Rename "TX RST" and "RX RST" to "RST Sent" and "RST Received" in the record dialog. 2015-02-28 19:48:10 +00:00
Christian Jacobs 6781c30be1 Handle UnicodeDecodeError exceptions. 2015-02-28 16:19:52 +00:00
Christian Jacobs db514158ac More unit tests and docstrings for the ADIF module. 2015-02-27 08:39:09 +00:00
Christian Jacobs 99724ae10e Handle the case where the user tries to add/edit/delete a record, but the Summary page is selected. 2015-02-16 10:39:16 +00:00
Christian Jacobs 90e2941ee0 Add titles to the auxiliary dialogs. 2015-02-16 10:36:04 +00:00
Christian Jacobs 2d0e33ceb7 Perform extra passes to ensure that all duplicate records are removed. There might be a better way to do this. 2015-02-08 20:05:15 +00:00
Christian Jacobs c5160967fa \Z was matching literal 'Z' characters, even when double-escaped, when importing ADIF records. Not quite sure what's going on there, but I don't think the \Z is necessary anyway, so let's remove it. 2015-02-08 17:11:11 +00:00
Christian Jacobs 0f1bffc5ea Bump the version to 0.2 in preparation for release. 2015-02-08 15:54:37 +00:00
Christian Jacobs f49ac8738e Make the path to the test.db file relative to the adif.py file. 2015-02-08 13:47:24 +00:00
Christian Jacobs eaefff86c0 Allow default values for power and mode, but remove the work-in-progress for the default frequency unit. 2015-02-08 01:09:05 +00:00
Christian Jacobs 2c5c046a7a Clear the contents of the file, in case the file exists already. 2015-02-07 21:44:34 +00:00
Christian Jacobs 69d1a95f51 Docstrings and comments. 2015-02-07 21:28:55 +00:00
Christian Jacobs d428fc7953 Use set_do_overwrite_confirmation(True), rather than handling the confirm-overwrite signal ourselves. 2015-02-07 21:25:06 +00:00
Christian Jacobs e6e8570c1b Separate the Create and Open functionality for logbooks. Addresses issue #20.
The menu and toolbar now have separate "Create Logbook" and "Open Logbook" buttons.
2015-02-07 21:22:16 +00:00
Christian Jacobs 4c28af97c0 Specify the Agg backend for matplotlib. Fixes issue #21. 2015-02-06 23:52:09 +00:00
Paride Legovini 9473318e9a Fix creation of empty GtkTreeModel 2014-05-18 10:17:09 +08:00
Christian Jacobs 1e5744568a Added a button next to the "Time" field in the records dialog to insert the current date and time. 2014-05-13 18:20:39 +01:00
Christian Jacobs 81b746133e Merge the two 'if' statements. 2014-05-13 16:38:48 +01:00
Christian Jacobs 9400aca4d7 Also force all callsigns to be in upper case when imported from an ADIF file. 2014-05-13 16:36:12 +01:00
Christian Jacobs 8a6824ced7 Always show the callsigns in upper case. 2014-05-13 16:28:30 +01:00
Christian Jacobs 7f6e5e7a62 Added the option of removing any prefixes or suffixes from the full_callsign.
Also moved the QRZ.com login details frame to the Records tab.
2014-05-13 16:27:31 +01:00
Christian Jacobs 42d6130d0e Handle 'configuration option not found' exceptions. 2014-03-31 10:44:46 +01:00
Christian Jacobs af9a283849 Don't use the callsign's length. 2014-03-31 00:58:21 +01:00
Christian Jacobs 2977dad8ab Updated some comments. 2014-03-27 10:12:58 +00:00
Christian Jacobs 6dada62d28 Added the option to choose the default unit of frequency. Not fully implemented yet. 2014-03-27 10:09:38 +00:00
Christian Jacobs 65bd7175fb Removing any prefixes and/or suffixes (e.g. "/M" or "/P") from the callsign before performing a lookup. 2014-03-27 10:08:46 +00:00
Christian Jacobs 0743093f24 Give users the option of using UTC when the Date and Time fields are automatically completed. 2014-03-24 03:06:47 +00:00
Christian Jacobs 8f2017c6ef Small updates to some comments. 2014-03-23 17:19:48 +00:00
Christian Jacobs 5676a86e11 Improved error handling. 2014-03-23 17:17:59 +00:00
Christian Jacobs f187fe7fa4 Using the frequency ranges in the ADIF specification to determine the band, instead of the previous approach (using the band which was closest to the calculated wave length). 2014-03-23 17:11:11 +00:00
Christian Jacobs ed68b63108 Small improvements to the autocomplete_band code. 2014-03-23 02:43:11 +00:00
Christian Jacobs e143483f72 Added the option to autocomplete the Band field. 2014-03-23 01:54:24 +00:00
Christian Jacobs 4f70af2985 Added a function to autocomplete the Band field based on the Frequency field. 2014-03-23 01:24:45 +00:00
Christian Jacobs 2913b813d5 Move to version 0.2a-dev. 2014-03-22 22:05:08 +00:00
Christian Jacobs fc22b91c63 Changed the length of the programversion field. 2014-03-22 21:18:26 +00:00
Christian Jacobs 8df7019ad9 Move to version 0.1.
The main changes since v0.1b are:
- The ADIF export functionality has been fixed. Previously, only markers were being written and the actual record data was being skipped.
- The BEL character has been removed from the data received from the DX cluster.
- The 'Notes' column is no longer automatically resized.
- QSOs can now be sorted in the correct chronological order.
2014-03-22 21:07:35 +00:00
Christian Jacobs 20baf53720 Get the number of characters using len(str(ADIF_VERSION)), rather than hard-coding it. 2014-03-22 21:05:14 +00:00
Christian Jacobs d7e8e301e1 In the ADIF unit test: Close the connection once finished. 2014-03-22 20:59:00 +00:00
Christian Jacobs a39e1759e3 Added a unit test for the ADIF functionality that uses an sqlite3.Row object. 2014-03-22 20:57:05 +00:00
Christian Jacobs 8a09ed798c Include the valid ADIF file extensions as well as an "All Files" option in the 'Import Log' and 'Export Log' dialogs. 2014-03-01 18:39:23 +00:00
Christian Jacobs 40bc5aa187 If the field being sorted is the QSO_DATE, then also sort by the TIME_ON field so we get the correct chronological order. 2014-03-01 18:06:50 +00:00
Christian Jacobs a13ffd747f Bug fix: Use the 'keys' method to get the available column names in the record. 2014-02-16 21:47:51 +00:00
Christian Jacobs 0388577dcd Uncomment the line that removes the BEL character(s) from the end of the string received from the Telnet server. 2014-02-05 01:19:08 +00:00
Christian Jacobs aca64cc2c7 Set the sizing property of the 'Notes' column to 'Gtk.TreeViewColumnSizing.FIXED'. This resolves issue #1. 2014-02-05 00:53:16 +00:00
Christian Jacobs 9e55df40ce Remove an old print statement. 2013-10-04 22:58:42 +01:00
Christian Jacobs 62f952712e Bug fix for the calendar widget: add 1 onto the 'month' integer if (month + 1) >= 10. 2013-10-04 22:47:05 +01:00
Christian Jacobs bb177677df Moving PyQSO from version 0.1a to version 0.1b. 2013-10-04 20:03:05 +01:00
Christian Jacobs 0310984f56 Added links to the ADIF and DXCC websites. 2013-10-04 19:59:11 +01:00
Christian Jacobs 4afdbeb2e0 - Set bin/pyqso to +x
- Updated a module path.
2013-10-03 18:12:48 +01:00
Christian Jacobs c5d4d0173f More improvements to the manual. 2013-10-01 22:18:50 +01:00
Christian Jacobs 5c99387b40 More error handling. 2013-10-01 21:23:37 +01:00
Christian Jacobs ebc6d767aa More error handling. 2013-10-01 21:20:15 +01:00
Christian Jacobs 5eca6d4e68 More error handling and manual improvements. 2013-10-01 21:14:01 +01:00
Christian Jacobs 7396e895ac Handle the case where there is an IOError or OSError. 2013-09-30 18:16:06 +01:00
Christian Jacobs 99ab2c3924 Added IndexError to the except line. 2013-09-30 17:52:01 +01:00
Christian Jacobs 18de3ce518 Removed an old print statement. 2013-09-30 17:03:08 +01:00
Christian Jacobs a3c3552f14 Using 'with' statements to deal with database commits and rollbacks. 2013-09-30 16:56:11 +01:00
Christian Jacobs 23b6557c54 Remove the "close" button in the log's tab. 2013-09-16 03:24:53 +01:00
Christian Jacobs e3f81fbfda Fixed a bug which occurred when searching for duplicate records in an empty log. 2013-09-16 03:17:37 +01:00
Christian Jacobs 9c09a728fc Unit tests for the ADIF and Log classes. 2013-09-16 02:39:32 +01:00
Christian Jacobs 98dc386961 PyQSO is now feature complete. Moving from 0.1a.dev to 0.1a. 2013-09-15 15:02:39 +01:00
Christian Jacobs e8c3ff3f00 Updated status bar text. 2013-09-15 04:43:03 +01:00
Christian Jacobs f154f6406e Some more error handling and debugging statements. 2013-09-15 04:29:44 +01:00
Christian Jacobs f260462072 Added commit and rollback statements. 2013-09-15 02:49:12 +01:00
Christian Jacobs 3b12614cc3 More exception handling. 2013-09-15 01:10:13 +01:00
Christian Jacobs fb884803e7 A few bug fixes. 2013-09-15 01:02:21 +01:00
Christian Jacobs 74fa770a05 Added a 'make unittest' command to the Makefile. 2013-09-15 00:21:58 +01:00
Christian Jacobs 42a849aa4c Corrected a debugging statement. 2013-09-14 22:19:33 +01:00
Christian Jacobs e8c1fafbcc More debugging statements. 2013-09-14 22:12:10 +01:00
Christian Jacobs 45aee6bf74 More error handling. 2013-09-14 21:33:01 +01:00
Christian Jacobs f3232ee5b2 Handle the ImportError if the non-standard Python modules needed by the GreyLine class are not present. 2013-09-14 21:10:52 +01:00
Christian Jacobs f2e64dbd19 Wrap the import statements for the Hamlib module in a try-except block. Only try to call Hamlib if have_hamlib is True. 2013-09-14 20:31:12 +01:00
Christian Jacobs ab4d7ce9c6 A few small improvements. 2013-09-14 20:15:12 +01:00
Christian Jacobs d1e4c1471b - Added open and close methods for the Logbook class.
- Added some more error handling for database-related statements.
2013-09-14 19:27:45 +01:00
Christian Jacobs 26b86d754c Removed the 'delete log' button next to the log tabs, since it's unlikely the user will want to do this often. 2013-09-05 11:44:02 +01:00
Christian Jacobs fa7788f49d Changed ''' to """. 2013-09-04 21:12:04 +01:00
Christian Jacobs bc4ae0e41a Added more docstrings. 2013-09-04 21:03:48 +01:00
Christian Jacobs 927b41c3a7 - Added functionality to remove duplicate records in a log.
- Updated the manual.
2013-09-01 20:01:29 +01:00
Christian Jacobs 9511c40e21 Database updates can be expensive, so only update the field if the data has actually changed. 2013-08-15 22:33:59 +01:00
Christian Jacobs 660acb421b Use .lower() for the band data. 2013-08-15 21:24:12 +01:00
Christian Jacobs 10d7d4e662 Added DXCC award tracking functionality. 2013-08-15 21:23:10 +01:00
Christian Jacobs 326aa513d9 Use the parent window in the Gtk.PrintOperation.run call. 2013-08-03 20:16:50 +01:00
Christian Jacobs 2f11f80221 - Added a module for creating auxiliary dialogs for error messages and prompts.
- Renamed 'root_window' to 'parent'.
2013-08-03 20:11:00 +01:00
Christian Jacobs 56c8e6e33f Fixed an 'iter'-related bug - the correct iter is now used when editing or deleting records from the ListStore. 2013-08-03 19:00:39 +01:00
Christian Jacobs 80683bab07 - Added station-related fields to the records dialog.
- Fixed a case sensitivity-related bug in the callsign filter.
2013-07-28 16:50:52 +01:00
Christian Jacobs b729ecdfbd Added QSL_RCVD, QSL_SENT, and NOTES fields to the record dialog. 2013-07-28 16:01:04 +01:00
Christian Jacobs 18d3eeb708 The FREQ field can now be populated automatically by using Hamlib. 2013-07-27 19:22:54 +01:00
Christian Jacobs cc58cd421c - Decode from Base64 before sending data to the server.
- Resolved a few small callsign lookup bugs.
2013-07-17 16:40:21 +01:00
Christian Jacobs ed5420252e Add a VBox to the toolbox to accommodate awards-related widgets. 2013-07-15 01:56:54 +01:00
Christian Jacobs 8bceaf2cd2 Changed ADIF_VERSION to 1.0. 2013-07-14 16:57:44 +01:00
Christian Jacobs 57749656a8 Removed TODO statement. 2013-07-13 20:25:12 +01:00
Christian Jacobs 59f53981e8 Added callsign lookup functionality which uses the qrz.com database. 2013-07-13 20:23:53 +01:00
Christian Jacobs b2affe2ecc Don't add 1 to the month index here. 2013-07-13 16:52:48 +01:00
Christian Jacobs a00bd7192a - Finished log printing capability.
- Automatically fill in the date and time fields for new records.
2013-07-13 16:43:27 +01:00
Christian Jacobs 22460fff00 Added basic print functionality using the PrintOperation class. 2013-07-11 00:22:27 +01:00
Christian Jacobs 1e294c7e3a Some more improvements to backwards compatibility. 2013-07-05 00:26:34 +01:00
Christian Jacobs 5314c59b17 add_missing_db_columns is probably a better name for this method. 2013-07-04 23:58:02 +01:00
Christian Jacobs c6c0431617 Some more improvements to backwards compatibility. 2013-07-04 23:53:31 +01:00
Christian Jacobs 5cada62d02 - Improvements to backwards compatibility. PyQSO now adds a column with the field name to the database if it doesn't already exist. All entries are initially set to NULL. This prevents problems when the ListStore expects the column names to all be in AVAILABLE_FIELD_NAMES.
- Added a TODO file.
2013-07-04 23:04:31 +01:00
Christian Jacobs 1aaae548f1 - Refresh the grey line view every 30 minutes (if visible).
- Improved the layout of the Record dialog.
2013-07-03 11:48:51 +01:00
Christian Jacobs ac3a543a83 - Added a calendar widget to the Record dialog.
- Added a frame to hold station information. Still need to add the other relevant fields.
2013-07-03 01:00:00 +01:00
Christian Jacobs 5ab8ff6352 The 'sys' module is no longer needed here. 2013-07-02 15:14:30 +01:00
Christian Jacobs 2922e75b34 Some additional error handling for the database connection setup. 2013-07-02 15:13:25 +01:00
Christian Jacobs b40702c0bd Fixed log deletion functionality. 2013-07-02 03:20:51 +01:00
Christian Jacobs e151f0a23e Users can now import into existing logs. 2013-07-02 02:47:21 +01:00
Christian Jacobs df1fdcf781 Allow the user to select the field names that are visible in the logbook. 2013-07-01 23:23:43 +01:00
Christian Jacobs 6b1fdb644a Inform the user about the Base64-encoded data. 2013-07-01 01:20:06 +01:00
Christian Jacobs 9c52981eb5 Hook-up the ConfigParser to the user preferences dialog. 2013-07-01 00:56:32 +01:00
Christian Jacobs 5d0132422d - Added the instantiation of the ConfigParser class on application startup.
- Added some startup and qrz.com lookup options to the user preferences dialog.
2013-06-30 23:04:37 +01:00
Christian Jacobs 125f5f1e63 - Added a dialog for user preferences.
- Passed the parent window to the log name dialog.
2013-06-30 16:38:06 +01:00
Christian Jacobs b680e4c955 - Default to 800 x 600 resolution.
- Check that a log is selected before attempting to export.
2013-06-30 14:38:08 +01:00
Christian Jacobs 534eec3f95 - Added the Toolbox class.
- PyQSO now only redraws the grey line when the Grey Line tab is clicked.
2013-06-30 03:25:27 +01:00
Christian Jacobs dd45b74cc7 Reduce font size in grey line plot. 2013-06-30 02:59:16 +01:00
Christian Jacobs dc2e7ffccd Reduce the line thicknesses. 2013-06-30 02:51:52 +01:00
Christian Jacobs 0f242f3d20 - Added a frame to place amateur radio related tools.
- Added a grey line plot. Note that this requires an extra dependency (netcdf-python). Note also that the backend to matplotlib needs to be updated to work with PyGTK3.
2013-06-30 02:42:03 +01:00
Christian Jacobs e9b73d6985 Check whether the Summary page is currently selected. If so, don't let the user delete or rename that page. 2013-06-23 23:07:46 +01:00
Christian Jacobs 523c233f03 Improved the modification date format. 2013-06-23 22:42:22 +01:00
Christian Jacobs e79baec0bd Forget the idea about selected field names for now. Just use all available ADIF fields instead. 2013-06-23 17:31:27 +01:00
Christian Jacobs d587522327 - Check the validity of field data when importing logs in ADIF format.
- Make the BAND and MODE field data lower/upper case to ensure that the combo boxes are set correctly.
- If the user tries to overwrite a file when exporting a log, check that they are sure.
2013-06-16 02:09:53 +01:00
Christian Jacobs ed35c00409 Remove the filter for .db files. 2013-06-15 22:18:10 +01:00
Christian Jacobs b7342f4978 Added a method that finds the log_index from a log/page name. 2013-06-08 16:36:27 +01:00
Christian Jacobs 97322cb637 Remove padding. 2013-06-08 01:11:19 +01:00
Christian Jacobs e1857e4489 Renamed switch_visible_callback to toggle_visible_callback. 2013-06-08 01:00:27 +01:00
Christian Jacobs dd0084f206 - Allow auto-scrolling to the new text entry only if the focus is already at the very end of the Gtk.TextView.
- Remove the Unicode BEL character from the Telnet server response.
2013-06-08 00:54:53 +01:00
Christian Jacobs 721ddad46c Moved the DX cluster to the main window. 2013-06-07 21:56:36 +01:00
Christian Jacobs 974b65a9ca Updated a comment. 2013-05-19 23:02:24 +01:00
Christian Jacobs 6b2aefacf2 - Renamed the DATE and TIME fields to QSO_DATE and TIME_ON, respectively.
- Added icons to the menu items.
2013-05-19 21:11:23 +01:00
Christian Jacobs d802f1868b Now that a filter model is the child of the sort model, find the filter model's iter (instead of the sort model's iter) and pass it to convert_iter_to_child_iter. 2013-05-19 18:55:04 +01:00
Christian Jacobs 375539fbe2 Improved the layout of the "add/edit record" dialog. 2013-05-19 17:17:56 +01:00
Christian Jacobs 79e7916427 Also call the pop method for the filter list. 2013-05-19 17:05:17 +01:00
Christian Jacobs 220caf3c8a Disable the filter source if not connected to a database. 2013-05-19 16:58:10 +01:00
Christian Jacobs 003c2b347c Added filter (by callsign) functionality. 2013-05-19 16:51:47 +01:00
Christian Jacobs 7559ed7cee Allow the user to enter a new log name when importing ADIF logs, rather than using the ADIF file name as the log name. 2013-05-16 21:47:17 +01:00
Christian Jacobs 27042d1b22 Added unit tests to check the 'edit record' and 'delete record' functionality. 2013-05-16 21:46:44 +01:00
Christian Jacobs d3a18e77f3 Added a unit test to check the add_record functionality. 2013-05-13 12:08:39 +01:00
Christian Jacobs 27206117ad Set up a unit test to check the reading of ADIF files. 2013-05-10 22:03:09 +01:00
Christian Jacobs 6636ab224a - Logs can now be renamed.
- Bug fix: Records were not correctly being deleted or edited, because of the addition of the Gtk.TreeModelSort. Fixed by using the iter of the child object, not the new sorting object.
2013-05-10 14:05:33 +01:00
Christian Jacobs 6986764476 Bug fix: The log index is no longer determined from the tab's index in the Gtk.Notebook (which sometimes caused an index out of bounds error). 2013-05-09 11:29:55 +01:00
Christian Jacobs 4f75523805 Updated a comment. 2013-04-30 03:21:42 +01:00
Christian Jacobs eeb801ff0e Users can now sort the log (by a single column). 2013-04-30 03:17:40 +01:00
Christian Jacobs 7afbb2cdab Set up check_io_event in the __init__ method. 2013-04-28 00:06:37 +01:00
Christian Jacobs d68f6b6f18 Disable the connect button once connected. 2013-04-27 23:55:50 +01:00
Christian Jacobs 42097b5ca7 Added DX cluster functionality (using Telnet). 2013-04-27 23:23:19 +01:00
Christian Jacobs c6bae0d81e Moved the is_valid method to the ADIF class, since data is validated against ADIF field definitions. 2013-04-27 16:56:02 +01:00
Christian Jacobs 79687fb0d6 Fixed the ADIF import/export functionality. 2013-04-26 23:53:23 +01:00
Christian Jacobs fc04f5d004 Enable the relevant menu items only when required. 2013-04-26 10:32:48 +01:00
Christian Jacobs d107fb5485 Disable the record buttons if a log is not selected. 2013-04-26 10:10:05 +01:00
Christian Jacobs 69b7fcba8f Removed import statement for the Record class (which no longer exists). 2013-04-22 20:39:33 +01:00
Christian Jacobs 604a4b1854 - Added SQL statements for adding, editing and deleting records.
- AUTOINCREMENT the primary key.
2013-04-22 14:37:21 +01:00
Christian Jacobs aaf86720d2 Update logbook information on the Summary page every time the logbook is modified. 2013-04-22 00:15:07 +01:00
Christian Jacobs 1ab776226b Left-aligned label text. 2013-04-21 17:47:09 +01:00
Christian Jacobs e4af7bed2d Added connect and disconnect buttons to the toolbar. Users can now select the .db file through the GUI. 2013-04-21 15:52:06 +01:00
Christian Jacobs bc25b831b9 - Added a "Summary" page for the Logbook. This will eventually contain info such as Logbook name, number of log records, date created, date last modified, etc.
- logbook.py needs a tidy-up.
2013-04-17 00:51:28 +01:00
Christian Jacobs d0246a3f2c - Added a "+" ("New Log") tab, and a "Delete Log" button after each tab's title.
- Added a new dialog so the user can enter the new log's name.
2013-04-16 23:53:24 +01:00
Christian Jacobs 38a7c65e09 Update the status bar once connected to the database. 2013-04-15 02:49:16 +01:00
Christian Jacobs d13dc12cb3 PyQSO now accepts the database file name as a command line argument, and tries to connect to the database on start-up. 2013-04-15 02:37:02 +01:00
Christian Jacobs 06c7f225ea Removed the Record class. SQLite3 is now used to store the log records. 2013-04-14 15:50:50 +01:00
Christian Jacobs c8a9b29f3e Placing :memory: in quotes. 2013-04-14 15:35:17 +01:00
Christian Jacobs 2fb650f7ab Added create and destroy methods for the SQL database connection. 2013-04-14 15:18:46 +01:00
Christian Jacobs 2b2faffaf1 When closing a modified log, ignore the * at the end of the log's name. 2013-03-31 03:52:38 +01:00
Christian Jacobs 097d2ac261 Pass in None as the parent window argument until a better way of handling this is found. 2013-03-31 02:18:46 +01:00
Christian Jacobs 1bd9f5d797 Only change the tab's label text if the record has been modified. 2013-03-31 02:10:02 +01:00
Christian Jacobs 47625d0f78 Set the ADIF version as a constant, defined in adif.py. 2013-03-30 21:49:20 +00:00
Christian Jacobs 75a7bcce09 Changed the version number to 0.1a.dev. 2013-03-30 21:38:11 +00:00
Christian Jacobs 2aa9c9ca25 Added __init__.py. 2013-03-30 20:56:34 +00:00
Christian Jacobs 8dd0aa8313 Placing pyqso.py in the 'bin' directory. 2013-03-30 20:51:04 +00:00
Christian Jacobs e409cf7475 Renamed src/ to pyqso/ 2013-03-30 20:50:20 +00:00