Commit Graph
360 Commits
Author SHA1 Message Date
Eberhard Graether e8c01ae2ce logic: Fixed concurrency issues in TaskGroupParallel causing scheduler freeze 2017-05-04 11:57:52 +02:00
malte_langkabel 054b8fab17 logic: reduce access to filesystem while indexing
* use canonical filepath cache in cxx indexer
* made constructors of FilePath explicit
* use FilePath at more places instead of string
* forward declares FilePath wherever possible
2017-05-04 10:55:16 +02:00
Eberhard Graether 0468168d61 ui: Fixes and improvements for bookmarks
* moved bookmark buttons behind search bar
* suggest qualified name when creating, file name for files
* fixed bug when updating bookmark category
* changed comment toggle arrow
* changed edit and delete icons
* fixed undo for edge bookmarks
* keep categories always alphabetical regardless of subsorting
* keep category expansion state when opening and closing browser
* removed QtBookmarkBar, moved logic into QtBookmarkView
* added bookmarks Menu with shortcuts
	Ctrl + D: Create Bookmark
	Ctrl + B: Bookmark Manager
2017-04-26 00:33:34 +02:00
malte_langkabel e669064452 logic: Add unique constraints to SQLite tables 2017-04-24 17:38:16 +02:00
Eberhard Graether f0b7dcdcdd ui: Show call graphs, inheritance trees and include trees for active symbol (issue 249 337)
* Added TrailLayouter with Sugiyama dependency layouting
* Layouter supports horizontal and vertical layouts
* Added basic ui to graph view for showing incoming and outgoing paths
* Added depth slider, with infinity at maximum
* Disable trail ui when not available
* Added trail messages to undo stack and only use last one when undoing
* Added QtGraphLineBezier for trail graphs and refactored other line types
* Disabled edge activation for trail layouts, shown only visually
* Highlight all connected edges when hovering a node in trail layout
* Use different color when highlighting call edges for better contrast
* Fixed BucketLayouter issue when edge does not leave node
* Increased click area for angled edges

bug id = 249 337

fortune cookie message = Answer just what the heart prompts to you.
2017-04-24 01:14:53 +02:00
Eberhard Graether 01bd0efefb logic: run message handling in parallel per message 2017-04-19 14:26:28 +02:00
malte_langkabel 2b24b88745 data: bookmark refactoring
* implemented handling of aggregations in bookmarks
* split index Storage and bookmark storage
* each sqlite database has its own version now
* added bookmark tests
* fixed creating bookmark tables when project can be loaded but bookmark db does not exist
* fixed font size for bookmarkview tooltips
* using bookmark cache now
* using default category name when none specified by the user
* raising bookmark windows when they should be shown
* clearing a bookmark or category in the editor will now update the star icon accordingly
* non-persistent bookmarks use ids of nodes and edges now (instead of names)
* git ignore .srctrlbm files
2017-04-17 10:55:59 +02:00
malte_langkabel 6e342fa87c logic: terminating all running tasks before closing the application (issue #343) 2017-04-12 10:46:56 +02:00
Eberhard Graether 0e4b606c7c src: Fixed FileRegisterStateData synchronisation 2017-04-12 00:38:48 +02:00
malte_langkabel 23341d63d0 ui: reset window layout option in view menu 2017-04-10 18:45:32 +02:00
malte_langkabel d4d3decfb9 logic: fix log file did not have a name 2017-04-10 11:02:12 +02:00
Andreas Stallinger 045a259b2e build: renaming to sourcetrail 2017-04-07 13:19:09 +02:00
malte_langkabel 7b30ac18de logic: source groups for project settings
* project can not have multiple source groups with different types
* language of a project is now inferred from source groups
* setting global NameHierarchy delimiter of first sourceGroup in project
* added project settings migrations for source groups
* Add Settings Migration classes (MoveKey, DeleteKey, Lambda)
* Update sample projects with migrations
* added method to config to retrieve sublevel key names
* implemented recursive removing of keys in settings
* moved project files out of top level
* removed solution parsing code as it is not used anymore

fortune cookie message = The secret of getting ahead is getting started.
2017-03-31 16:11:37 +02:00
wrongway88 25f3c4666a src: Logger Utility
Added logger utility and outsourced file name creation for file loggers to it
2017-03-29 22:56:37 +02:00
Eberhard Graether 4e9ba897ac src: Refactored TokenLocation classes to SourceLocation classes
* Removed TokenLocationLine
* decoupled TokenLocationFile from TokenLocationCollection
* save vector of Token ids to SourceLocation
* refactored SourceLocationFile::getFilteredByLines()
* refactored snippet creation
2017-03-25 02:05:48 +01:00
Eberhard Graether 630009a2ba logic: Refactored undo redo stack
* Store MessageActivateTokens instead of original view messages
* Renamed FeatureController to ActivationController
* Remove all non-activation messages from undo redo stack after reindexing project
* Added MessageShowReference to undo redo stack
* Added MessageScrollGraph for restoring graph view scroll position
* Fixed MessageGraphNodeMove not saved for bundles
* Refactored tokenIds and nodeNames in SearchMatch and MessageActivateTokens
* Refactored SearchController
* Fixed file expansion on undoing/redoing after switching code view mode
* Fixed redundant graph animation due to present qualifier nodes
* Fixed no restoring of graph node expansion when showing overview in between
2017-03-16 23:24:33 +01:00
Eberhard Graether aa49fffca6 src: fixed clang warnings 2017-03-15 12:58:06 +01:00
malte_langkabel 3cbe83f9e6 logic: maven project setup
* added option to create a Coati project from a Maven POM file
* show list of indexed file paths in maven project setup
* use FileManager to detect indexed files in project setup (except cdb)
* added Maven path to preferences window and added path detectors.
* fixed: QtDialogView::hideStatusDialog now also hides loader in status bar.
* refactored ProjectType

fortune cookie message = If you continually give, you will continually have.
2017-03-08 14:55:42 +01:00
malte_langkabel 4563cbe90a logic: indexer commands
* replaced parser arguments by project specific IndexerCommands that know everything the indexer needs to know to do its job
* added different language and project specific indexers that know how to handle a certain kind of indexer command
* refactored FileManager and FileRegister to have less overhead
* removed no-rtti restriction for clang files in lib cxx
* uncommented deprecated interprocess code.

fortune cookie message = Happiness will bring you good luck.
2017-02-22 16:42:20 +01:00
Andreas Stallinger 0e5cc4bf7a build: fix build on Unix systems
* throw std::exception replaced with throw error
* MANAGER to Manager in CMakelists
2017-02-21 17:46:09 +01:00
wrongway88 1fbc16e098 logic: interprocess utility
Added basic interprocess utility
2017-02-21 17:12:35 +01:00
Eberhard Graether 77ef076c88 ui: Show definition in code view when clicking active node in graph 2017-02-21 00:37:19 +01:00
Eberhard Graether be82e2a24e src: Fixed issues with relative paths 2017-02-13 22:45:59 +01:00
Eberhard Graether 637da119aa logic: Cleaned up LogManager and setupLogging call 2017-02-13 20:25:24 +01:00
Eberhard Graether 0ceff0203c ui: Revised project setup to customer feedback
* Support environment variables in compilation database path
* Moved advanced option (compiler flags & exclude paths) to separate dialog
* Allow environment variables that contain multiple paths
* Renamed 'Project Name' to 'Coati Project Name'
* Renamed 'Project File Location' to 'Coati Project Location'
* Renamed 'Project Paths' to 'Indexed Paths'
* Make all paths chosen by path picker relative to the project location
* Disabled name and location changing in project editing and removed project moving
* Added sub-titles to project setup dialogs
* Warn user when no Indexed Header Paths were set
* Deprecated lazy include search: It's only useable and visible to projects holding the key
* Split default file extensions for C++ and C

bug ids = 234 254 283 293 312 335
2017-02-13 01:02:09 +01:00
wrongway88 97fd40fe9b ui: bookmarks
can now bookmark tokens
2017-02-12 15:06:07 +01:00
Eberhard Graether 0eb959bf54 logic: Allow project opening in trial mode
* added open project button to start screen in trial mode
* allow ide communication in trial
2017-02-11 17:22:14 +01:00
malte_langkabel 1bb25140a7 ui: renamed undefined to non-indexed and made node/edge names more readable 2017-02-06 16:18:00 +01:00
malte_langkabel 7f2db69995 build: offer windows 64 bit build (issue #300)
* update to clang/llvm to 3.9
* update to qt 5.8
* fixed windows javapathdetector for 64 bit java.
* added LibGui as dependency to tests
* fixed legacy Java 6 install necessary on MacOS
* fixed setting of user path for 64 bit build
* added missing pngs to windows installer
* renamed graph zoom button images
* reverted moving of setupLogging call to fix crash on deployed exe

fortune cookie message = An old acquaintance will enter your life.
2017-02-03 14:31:43 +01:00
Eberhard Graether 52b0cd2017 ui: redesigned graph overview and use new list layouting within overview bundles
* overview bundles imitate style of bundled node type
* removed bundle for built-in types
* show contents of overview bundle in vertical list layouted with new ListLayouter
* nodes starting with the same letter are grouped with the letter displayed above
* pressing the letter key will scroll to the group
* also use this list layouting for namespace & package contents
* renamed BucketGrid to BucketLayouter
* moved used functions of GraphPostProcessor to GraphViewStyle and removed GraphPostProcessor

fortune cookie message = Don't be afraid to take that big step
2017-02-02 13:29:40 +01:00
malte_langkabel 6ea248b500 logic: clearing unused includes
* refresh also clears referenced (included or imported) files if they are not part of the project's source files and are not referenced by any other unchanged file anymore.
2017-01-23 10:36:42 +01:00
malte_langkabel 184a1a0319 logic: fixed refreshing bug
* fixed bug where coati didn't recognize file dependencies because each file actually had two different nodes.
2017-01-19 13:44:14 +01:00
malte_langkabel e7d2ddbd2d logic: handling of multiple files with the same name
* implemented storing symbols and files in completely different tables
2017-01-17 11:27:20 +01:00
malte_langkabel ecbc703261 logic: fixed environment variable detection
* fixed detection of environment variables in path that are encapsulated in %VARIABLE_NAME%
* mentioned notation for environment variables in documentation
2017-01-11 14:54:06 +01:00
malte_langkabel a8ca0660fa ui: Coati states if it requires 32 or 64 bit Java
* also updated documentation
2017-01-11 11:58:33 +01:00
Eberhard Graether 2bdc9b19a2 ui: Added single file mode to code view
* Added navigation to top of code view for iterating references and switching between list and single file mode
* current file name and reference count is shown on top in single file mode
* refactored scrolling to location or line via request system
* added parameters animated and toTop to scrolling system
* refactored class hierarchy and removed unused stuff in list mode
2017-01-09 00:48:20 +01:00
malte_langkabel 5482e56e82 build: deploy changes
* moved sample projects from data to user folder
* added fallback files for app and window settings
* implemented copying app and window settings to user folder when not found on app startup
* fixed upgrading for windows installer
2016-12-14 13:33:17 +01:00
Eberhard Graether 48ece50eca src: Added more status messages and some fixes
* Elide status bar messages to avoid window resize window
* Fixed status view clearing when switching projects
* Refactored app setting loading
* Replace newline characters with spaces in status view
2016-12-13 01:41:06 +01:00
Eberhard Graether 5845a98095 logic: polished status view
* click message in status bar to show status view
* renamed status tab to output
* renamed status column to message
* fixed list not properly updating when using filters
* scroll to first row after clearing
2016-12-12 11:08:07 +01:00
Andreas Stallinger ebddfaaa32 build: 32 bit linux ci
* in vector testsuite replaced EQUAL with DELTA for float comparison
* on linux use appsettings for testing
* botan deprecated warning
* template error in cxxtest
2016-12-09 12:03:05 +01:00
Eberhard Graether 2d9052992c logic: Scroll active definition to top of code view is possible
* don't log hande message
* fixed graph gets animated when using next and previous code reference shortcuts
* fixed message scroll code handling
2016-12-07 14:18:24 +01:00
Andreas Stallinger 5d5a0922f5 ui: statusview
* statusview as tab
2016-12-07 12:56:56 +01:00
Eberhard Graether 3a269ad7b3 ui: Fixed graph switch animation being used for edge activation 2016-12-07 12:39:43 +01:00
Eberhard Graether 457833fb2a logic: Added full refresh checkbox to indexing start dialog
* Checkbox allows for switching between refresh and full refresh
* Renamed menu option Force Refresh to Full Refresh
* Checkbox is not visible when project needs to be fully refreshed
2016-11-30 16:32:34 +01:00
malte_langkabel 328cf7e8cc logic: indexer and name resolving fixes
* made header and excluded filepaths of filemanager canonical
* implemented solving Attributed- and InjectedClassNameType
* handled clang returning null objects in NameResolvers
2016-11-29 17:26:57 +01:00
Manuel Dobusch d24e5b5bbd logic: vs plugin upgrade
Updated documentation and removed obsolete plugin ui
2016-11-29 14:06:02 +01:00
Eberhard Graether e9cadbed8d ui: Show namespace label on left side of graph nodes
* Added arrow indicating namespace and package name on left side of node
* Show namespace label when hovering arrow
* Activate namespace when clicking label
* New design for namespace nodes
2016-11-28 16:28:52 +01:00
Andreas Stallinger 0fad00e6f2 ui: clear button logview 2016-11-28 16:01:50 +01:00
Andreas Stallinger f53f6dae98 ui: logview logic in controller
* logfilter in applicationsettings
* logview limit 500 entries
2016-11-25 15:16:07 +01:00
Manuel Dobusch 3580ed79f7 src: removed visual studio solution parser
Removed the visual studio solution parser and its tests as it is deprecated
2016-11-24 17:04:59 +01:00