-
Cage, Marshall Andrew authored
After testing on a different machine, a few new bugs reared their heads. These have been squashed for now. - Reorganise project - Allow email fetch without filters (only if mailbox is explicit) - Handle incorrect login credential crash - Update document dump description - Clean up certain imports - Fix empty contents section bug when opening a profile - Add static method to emit profileChanged signal - migrate to new repo (but I didn't want to keep revision history, hence the copy/paste) Date: Tue Jul 26 11:48:55 2016 -0400 Fix divide by zero bug in glob.py - Fix wrong email body being searched in emailscrapebasic:constructFragments Date: Tue Jul 26 10:53:27 2016 -0400 Update documentation In preparation for impending release, the documentation has been updated to describe installation procedure. It also explains how to create new packages and plugins. - Add PreferenceManager for persistant module and plugin level prefs - Add prefernce save/load - Fix package search path to look in the executable's directory, not the cwd - Add preferences for default package (email stuff) Date: Thu Jul 14 12:24:32 2016 -0400 Add profile save status I beefed up saving profiles. I removed 'Report' and made the Profile the main data container. Open, Save and New all now open/ save/create Profiles. Shortcut keys work as expected (^+s, ^+o, ^+n, ^+shift+s.) The title of the window now reflects the Profile name (instead of the Report title) and the save state. I added a new signal to the ARCTool class. When the first instance is created, the Class's signal is replaced with the instance's signal. Whenever the save state of the profile is changed, the main ARCTool gets notified via this signal. Modules with QLineEdits, QTextEdits, QCheckBoxes, QSpinBoxes, QDateTimeEdits and some others will automatically notify the tool that the profile has changed. But, for custom widgets or certain signals, the signal will need to be mannually emitted. - Add 'Save Profile As...' action - Remove 'Open' and 'Save' which were for Reports - Fix tableChanged signal in emailfilter to reflect individual filter changes - Add Document Module to insert documents via pandoc. - Add docx exporting - Swap odf (QT) export with odt (pandoc) - Fix Section heading style on export (add <h1/> tags) Date: Tue Jul 12 16:54:47 2016 -0400 Fix certain formattings Date: Tue Jul 12 16:15:58 2016 -0400 Add PreferenceManager PreferenceManager adds additional persistance for more concrete settings that might span modules. Preferences are stored in wherever QT's AppData folder is located. Preferences can be set for packages as a whole or individual modules in the preferenceDict of either. - Format code to PEP 8 (mostly) - Fix OR in email filters - Add highlight non existant filter labels - Add mailbox select - Add IMAP server preference - Add IMAP port preference - Add SSL preference - Add statusBar messages - Add IMAP error handling - Add strip email replies - Add strip email headers from inline - Add strip email's duplicate text - Add strip email's extra whitespace - Add strip email formatting - Add email delimiter - Fix minor bugs all over the place Date: Fri Jul 1 17:06:40 2016 -0400 Tweak NLP to better recognise lines and paragraphs - Tweak email representations (images) - Add other export options Date: Thu Jun 30 16:36:16 2016 -0400 Finish first pass of NLP Basic email scraping is there but it's somewhat lacking. Output formatting works fine, but text detection could use work. Next I should add wc matching (making sure we have as many words in the selection as the samples.) When there is uncertainty in the match the output is marked in red (in the document) and tagged with the (un?)certainty percentage. - Add context checking to emailsrapebasic Module - Add contextChanged signal to ARCTool - Fix email rendering in emailscrapebasic (images and such) - Disable group/selectionBox when appropriatae - Tweak emailsrapebasic.ui - Tweak Date Context Date: Wed Jun 29 16:59:25 2016 -0400 Add Glob and GlobItem for NLP If anyone sees this, keep in mind I'm self teaching NLP thru intuition and I'm not a statistician, so... Date: Tue Jun 28 16:59:27 2016 -0400 Add Group assignment Add Group selection Begin NLP in email filters Fix filter label bug (\w+) Date: Mon Jun 27 16:54:13 2016 -0400 Connect filters to IMAP Fetch Add basic email loading in 'mailBrowser' widget. HTML/plain text Add LoginDialog for taking usernames/passwords Date: Fri Jun 24 17:41:34 2016 -0400 Add more regex Date: Thu Jun 23 16:51:41 2016 -0400 Add EmailFilterTable Began the EmailFilterTable class which allows the user to create and label IMAPv4 filters for search. Much of the logic checking is implemented in the validator for the logic LineEdit. Add emailscrapebasic module Add basic documentation structure (sphinx) Adjust margins in TextEdit (textedit.py) Date: Fri Jun 17 16:47:33 2016 -0400 Tweak modules, reorganise files Date: Fri Jun 17 14:17:19 2016 -0400 Add Text module in Default package The Text module is just a simple rich text editor. It tracks its state through an html string stored as an extra. It also makes use of a seperate python file to implement its ui. This proves that modules should be able to consist of multiple files. -Add extra icons (need to be renamed) -Add entry recall for the List module -Add font recall for the Cover Page module -Add 'extras' for modules (can store non UI state data) -Add template Module in packages/Default/template.py/ui Date: Thu Jun 16 16:54:10 2016 -0400 Add more persistence Added persistence for contexts and whether or not titles are drawn. -Fix load settings from profile (mostly) -Fix minor save profile errors -Change to QTextDocument to preserve formatting -Add export to pdf -Remove export to docx -Add ORNL package with cover page module -Add list module to default package Date: Tue Jun 14 14:01:26 2016 -0400 Setup proper value packing for module persistence Date: Mon Jun 13 11:45:32 2016 -0400 Add basic Document export to to .docx A Document can be exported to a .docx. The content of the document is retrieved from the Content objects in a given Section. To update the Contents in a Section, the Section's updateConent calls its Module's storeOptions and then its Module's generate. It's on the module developer to make sure his module's storeOptions or generate performs the steps necessary to produce the desired output. storeOptions is also (will be, rather) called when the Profile is saved (so that the module state can be restored later.) Therefore, storeOptions should only do things like grabbing information from ui elements (textboxes, etc.) and calculations or data fetch should be left in generate. - Add Document class to hold data before export - Add .docx export - Add Content classes to abstract document content - Fix moduleSelectDialog title - Add generateReport and exportReport to MainWindow Date: Fri Jun 10 17:00:11 2016 -0400 Fix open profile to load module (but not options) Date: Fri Jun 10 14:55:29 2016 -0400 Change Packages to use python module utilities In order to more easily/properly load python code, Packages were restructured to behave as python modules, and each Module is a sub- module. Date: Thu Jun 9 20:27:39 2016 -0400 Add Profile open support Openning the profile correctly reconstructs the section list, but doesn't load module information, as that stuff isn't even stored yet. - Add .ui for test modules - Fix enabled moduleToolsWidget after deleting last section - Fix minor save profile formmating issues Date: Thu Jun 9 17:09:43 2016 -0400 Add Module Select dialog - Remove module combobox - Flesh out Module class - Add Package class Date: Thu Jun 9 10:00:26 2016 -0400 Add default Contexts - Add Date Context - Add Time Context - Add 'None' Context - Add Context widget swapping - Fix splitter expansion and section tools width - Create *.ui build script - Fix .gitignore Date: Wed Jun 8 14:38:37 2016 -0400 Add Profile saving - Add Profile saving - Add XMLEscape function - Add Profile, Section and Module serialisation - Add 'Profile:' and 'Report:' labels - Add .gitignore Date: Wed Jun 8 10:38:59 2016 -0400 Create repo
a331b49d