Commit Graph
314 Commits
Author SHA1 Message Date
Eberhard Graether 95e121159f ui: fixed annotations stay highlighted after hovering in tooltip list 2018-12-17 02:05:58 +01:00
Eberhard Graether 1dabbab599 ui: Extracted syntax highlighting rules for java and cpp to files
* pass file language from storage to code view
* load syntax highlighting rules files from install directory "syntax_highlighting_rules"
* files must be named <language_identifier>.rules to make syntax highlighting work
2018-12-16 22:59:07 +01:00
Eberhard Graether d3d5b961ff data: Replaced NameDelimiterType in NameHierarchy with std::wstring to allow use with arbitrary delimiters 2018-12-11 16:29:08 +01:00
Eberhard Graether b47a0b5b72 logic: Inspect errors during indexing (issue #235)
* Enabled errors table during indexing
* Store intermediate errors in StorageCache
* Open tab for errors if no tab yet
* "Show errors" for file disabled during indexing
* Hide indexing dialogs with ESC instead of stopping indexing
2018-12-06 15:46:42 +01:00
Eberhard Graether a044e17fdc ui: Reduced code view snippet style 2018-11-30 22:40:07 +01:00
mlangkabel a51799c279 logic: Store locations of errors in source_location table of DB 2018-11-30 16:02:10 +01:00
Eberhard Graether 308954635e ui: Fixed unhovering source location does not remove graph highlight 2018-11-21 16:01:17 +01:00
Eberhard Graether c7afb0910d logic: Added weekday condition to news API 2018-11-12 23:40:07 +01:00
Eberhard Graether 6490191972 ui: Fixed code file content requests in background tabs failing 2018-11-12 16:14:42 +01:00
Eberhard Graether e96a28b38a ui: Finalized news on start screen layout
* And fixed mac bundle install script.
2018-11-05 14:15:55 +01:00
Eberhard Graether f13aec70dd ui: Added tabs UI to top of main window (issue #215)
* Added tab bar to top of main window with UI/shortcuts similar to web browsers
* ComponentManager offers components for 2 use-cases: application and tab
* Application components: log view (status/errors), bookmarks, screen search, status bar, tabs, tooltips, dialogs and all tab views disabled
* Tab components: graph, code, history and search
* When a project is loaded there is always at least one tab, otherwise there is none
* Each tab replaces the application views of the same name in the main layout when activated
* Each tab has it's own TaskScheduler, to process tasks independent from other tabs
* The application has a global TaskScheduler for application wide tasks
* The singloton class TaskManager is responsible for managing the TaskSchedulers
* MessageListeners and Messages hold an optional schedulerId, both must be set to only send to a specific TaskScheduler
* Bookmark buttons where split off into a separate view per tab, bookmark managemement is done in the application
* History menu processing is done by the QtMainWindow now
* Screen search is an application component, the responders are always changed to the active tab
* Plugin messages are opened in a new tab
* Symbols can be opened in a new tab via middle click/context menu in graph, code, history dropdown
* Full text index creation is mutexed now in PersistenStorage to make it fully thread-safe
* All tabs are closed when switching projects
* Tab contents are only animated when visible

fortune cookie message = Catch your lucky star!
2018-11-05 01:28:12 +01:00
Eberhard Graether e2dd26ee5a logic: Split MessageRefresh into index and UI 2018-10-28 12:11:53 +01:00
Eberhard Graether 6a6bd0fca8 ui: Show news sent with update check on start screen
* News are passed as JSON string, containing an array of news items.
* Each news item has version and content (html).
* Items can be filtered by min/max version, OS and license. The first item that fits is used.
* Items can be important, which highlights the news box.
* News are not shown if older than 5 days.

fortune cookie message = You will be financially successful in case your actions are well planned.
2018-10-21 13:49:06 +02:00
Eberhard Graether ab6cf631f4 ui: Added Copy action to code view context menu 2018-10-20 00:09:57 +02:00
Eberhard Graether adc1900d18 logic: Fixed multiple active symbols broken on undo
* fixed undoing to multiple actives didn't show all nodes in graph
* fixed wrong name in search bar, status message and history dropdown
* fixed flicker when activating multiple nodes in code view
2018-10-19 20:47:08 +02:00
Eberhard Graether 842bce8b32 logic: Show hidden indexing dialog on refresh
* Fixed refresh restarted when refreshing while processing files
2018-10-17 01:30:33 +02:00
Eberhard Graether d78e80b548 ui: Fixed unhovering active error removes active highlight 2018-10-16 23:40:40 +02:00
Eberhard Graether db586939e9 ui: Fixed crash on scope expansion
Code file list was still referencing deleted snippet scrollbar after replacing snippets on scope expansion.
2018-10-16 12:10:20 +02:00
Eberhard Graether 9edfdacd72 data: Removed separate comment_location table
* added LocationType LOCATION_COMMENT
* store comment locations within source_locations
2018-10-04 21:21:31 +02:00
mlangkabel dfc6d88432 build: search headers in all source directories
* removed paths in include directives
* changed cmake to provide necessary header search paths
* changed name of version.h to productVersion.h due to name conflict
2018-09-18 19:00:18 +02:00
Eberhard Graether 366bbd6548 ui: Fixed local reference navigation not shown for edge clicks when file content was not present yet 2018-08-21 14:14:39 +02:00
Eberhard Graether 4e68de8917 logic: Fixed crash when start window deleted while checking for update 2018-08-21 13:19:17 +02:00
Eberhard Graether 2e5cfd9333 ui: Fixed code annotations missing in snippet mode for files with /r/n line endings 2018-08-20 14:43:44 +02:00
Eberhard Graether d71e28b7b7 ui: Fixed fulltext search locations disappearing when expanding scope in code snippet view 2018-08-05 20:29:17 +02:00
Eberhard Graether ac31bb6779 src: avoid indexing slowdown on macOS by not using unknown progress for progressbar in status bar 2018-07-24 03:36:27 +02:00
Eberhard Graether ed0ade034e ui: Graph legend (issue #308, #540)
* Show graph legend via 'legend' command or '?' button in the lower right corner
* Legend is not interactive: nodes and edges not clickable or moveable
* CXX and Java node types are mixed
2018-07-23 16:55:58 +02:00
Eberhard Graether 95ebfff19c ui: Added on-demand local reference navigation to code view navigation bar (issue #453, #538)
* show local reference navigation for local symbols and multiple edge references
* shortcut Ctrl/Cmd + T
* iterate with consecutive edge clicks
2018-07-23 03:13:41 +02:00
Eberhard Graether 1db248a34e ui: scroll code horizontally to active sourcelocations 2018-07-22 19:40:01 +02:00
Eberhard Graether ad6f5c8727 ui: Added show definition context menu action for graph nodes (issue #83)
* use 'show definition' context menu action or 'Ctrl/Cmd + Left Click' to show definition of node in code
2018-07-22 14:30:56 +02:00
mlangkabel c6f9d8f92c logic: show real code of signatures in tooltips
* added new location type
* refactored old recording code
* record signature locations for cxx functions and java methods
* added signature locations to sample project indexer tests
* ignore signature locations in ui
* signatures in tooltip with qualified name of the function/method
* added test for finding signature location of constructor with initializer list
2018-07-20 14:00:08 +02:00
Eberhard Graether ad325ac974 logic: background indexing (issue #175)
* allow hiding of indexing dialogs to browse loaded project while indexing
* show indexing status in status bar while indexing
* use different dialog views for different use cases to avoid state collisions
* fixed error label in status bar jittering while indexing
* show hand cursors for clickable elements in status bar
* indexing is not interrupted on pressing ESC while in hidden
* disable error table and error label while indexing
* refactored indexing messages
* forbid indexing and changing project while indexing
* don't show indexing status messages in status bar when indexing in the background
* allow tasks to run in the background

fortune cookie message = A journey is waiting for you.
2018-07-10 11:42:58 +02:00
Eberhard Graether c8a885be83 logic: Made history menu use on Messages instead of SearchMatch
* Common base class MessageActivateBase for activation messages with getter for SearchMatches
* Removed duplicate logic for creating SearchMatches from Messages
* Fixed can't reactivate fulltext search from history menu
* Renamed history message and moved to sub directory
* Fixed activating node type filters didn't clear code view
2018-07-03 15:11:52 +02:00
Eberhard Graether 6794b61fab ui: Fixed activating history item from menu showed wrong symbol (issue #572)
* Refactored SearchMatch: removed delimiter, added tokenName
* Refactored MessageActivateTokens: removed tokenNames
* Restore from SearchMatches from NameHierarchies of tokens
2018-06-30 02:16:03 +02:00
Eberhard Graether 172f1b7934 logic: Moved all error handling logic into ErrorController (issue #577)
* Handle all error related messages in ErrorController
* Moved error filter state from Storage to ErrorController
* Moved all error related messages to type/error subdirectory
* Enable all errors shown by default
* Always show unfiltered error count in status bar and overview
* Fixed all errors shown again when changing error filter on errors for file
2018-06-29 13:31:05 +02:00
mlangkabel bbf462d1fb logic: paths that are automatically filled by the project setup wizard will be made relative if they are shorter if the absolute paths 2018-06-15 18:39:03 +02:00
Eberhard Graether 1a37a9af34 src: miscellaneous fixes
* fixed code view snippet minimize click expanded snippet again
* fixed typedef nodes node grouped within file group
* fixed splitting anonymous namespace bundle increased group nesting instead
* fixed build, tests and clang warnings
2018-06-08 16:12:53 +02:00
Eberhard Graether 872d24bf6a ui: Fixed single code view is scrollalbe below last line and scroll request show the wrong line 2018-04-27 13:22:40 +02:00
Eberhard Graether c249c6c794 ui: Allow tooltips to be as wide as the window (issue #570)
<description>
2018-04-26 00:08:11 +02:00
Eberhard Graether c5d0362df5 ui: Fixed crash in FilePath::makeCanonical and QtPathListBox making all settings paths relative 2018-04-24 11:44:28 +02:00
mlangkabel f08f27717f logic: record and display include edges for non-indexed files
* non-indexed files are shown in graph view and in code view
* non-indexed files are ignored in search view, overview, stats and refresh dialog
2018-04-23 12:13:49 +02:00
Eberhard Graether 91b4e80384 ui: adapt scroll target value in code single file mode as workaround when view scrolls below last line 2018-04-21 04:30:55 +02:00
Eberhard Graether fe38cfff6a logic: Fixed single file mode fulltext references and caching 2018-04-21 03:43:50 +02:00
Eberhard Graether a18aa0b9a6 ui: Fixed switching code view mode shows active reference 2018-04-12 20:22:27 +02:00
Eberhard Graether 0489cac94d ui: Fixed carriage return in line endings breaks screen search in code 2018-04-12 19:24:50 +02:00
Eberhard Graether 04e82969a9 ui: Fixed expanding snippet footer to whole file 2018-04-12 19:12:23 +02:00
Eberhard Graether 2695b16e9c ui: Fixed scrollbar below snippet always bright on mac 2018-04-12 19:02:06 +02:00
Eberhard Graether 42ed53e71e src: Fixed clang warnings 2018-04-03 17:34:43 +02:00
mlangkabel 3ffe76d161 logic: Directory list box now restricts the user to select files, directories or both if required
* split QtDirectoryListBox and QtStringListBox
* renamed QtDirectoryListBox to QtPathListBox
* extracted QtListItemWidget class to own file
* renamed QtListItemWidget to QtListBoxItem
* added SelectionPolicyType to QtPathListBox to allow for specifying if selecting files, directories or both should be allowed.
2018-03-30 18:25:58 +02:00
Eberhard Graether aed783f5ca logic: lazy load code annotations
* code annotations are loaded after showing the code file
* added traces
* refactored highlighter
* fixed error tooltip style in codeview

fortune cookie message = It's not the time that counts, but what you do with it.
2018-03-24 13:19:49 +01:00
Eberhard Graether b5f9e77154 ui: Added close button to tabbed view 2018-03-20 16:33:48 +01:00