-
Notifications
You must be signed in to change notification settings - Fork 4
Feature/#50 tabs #51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Feature/#50 tabs #51
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
New tab functionality: Double click flight or create new flight to display in its own tab. Tabs have sub-tabs for future use displaying maps, transformations etc. TODO: Implement close button on tabs, decide whether to destroy tab, or hide to show again later.
Design new model based on QAbstractModel for Channel data selection feature. New model enables customization of drag and drop, and simplifies plotting updates. Modified types.py and created new BaseTreeItem class that provides implementation of AbstractTreeItem, without adding any additional features like TreeItem. This allows the developer to create specialized Tree Item classes with a default implementation for the basic requirements, without including unnecesary features.
Merging local work on Channel model and types.py into tabs working feature branch.
Add datamanager module, to act as a global interface to import/export/load/save data within the project. The datamanager is initialized once and then can be used by any other module in the project by calling datamanager.get_manager(). This simplifies the retrieval of data from various locations in the code, as each caller must only know the UID and type of data they need to retrieve, as opposed to storing references to the project to utilize its load method. TST: Basic test suite created for datamanager - more comprehensive tests need to be added as functionality is added to the module - plan to support the storing of metadata and other formats such as JSON, CSV.
A sprawling commit that lays the foundation for the UI as we proceed. UI Tabs are now mostly functional, each Flight is displayed in its own tab, and the contextual tree model (below the project tree) is automatically switched/updated as the user selects between tabs and sub-tabs. This commit and the preceeding commit also introduce the datamanager module, which was necessary at this point to reduce the complexity of calls between the Flights/Tabs and Project. Code in various files has been updated to utilize the new datamanager for the import/retrieval of DataFrames.
Fix erroneous behavior of datamanager if project directory is moved. Data manager now constructs paths to data files based on its initialization path.
General code cleanup Re-implemented state save/load into Flight tab code, so that the plot tab will remember and re-draw plot/lines when opened.
Improvements and tests added for basic functionality of DataManager and JSON registry component - ability to store/retrieve HDF5 files from module level instance. Added ability to close tabs in tab interface. Cleaned up and documented code in various files. TODO - should tab widgets be kept in memory for quicker redraw if reopened?
3 tasks
cbertinato
approved these changes
Dec 1, 2017
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Merge new UI Tab Layout into develop.
This branch includes many formatting fixes to various files, primarily reformatting them to 80 char line-widths, also deleting old/deprecated code and comments for general cleanup.
Resolves #50