Commit Graph
134 Commits
Author SHA1 Message Date
mlangkabel b6031fdb3a ui: fixed tooltips were not resizing if app font size was changed on windows 2019-03-11 18:01:16 +01:00
Eberhard Graether 1c11cd5e8c logic: Fixed crash when closing license window on force entering license 2019-02-26 15:39:13 +01:00
Eberhard Graether d6a07e9477 ui: Added link to changelog to help menu (issue #653) 2019-01-08 14:17:14 +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 267d6b2eb7 logic: Fixed and improved indexing interruption (issue #634)
* Fixed indexing can be interrupted when dialog hidden
* Clear intermediate storages when interrupting
* Abort waiting for less queued storages when indexing interrupted
* Don't index another file when indexing was already interrupted
* Moved indexing interrupted progress dialog to TaskBuildIndex
* Use MessageIndexingInterrupted instead of MessageInterruptTasks
2018-11-23 15:33:20 +01:00
Eberhard Graether bac8d6afe8 ui: Added Ctrl + W tab close shortcut for Windows 2018-11-05 12:16:16 +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 3d8afdb7be src: Removed pointless singleton pattern from LicenseChecker 2018-10-21 13:59:48 +02:00
Eberhard Graether c50ff53b32 logic: Fixed history menu to show global activation history chronologically 2018-10-19 22:18:17 +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
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 ea0c249ad9 ui: Improved contrasts in color schemes
* fixed edge routed wrong issue in graph legend
* fixed Alt + Ctrl/Cmd + R refreshes UI
2018-07-27 14:45:25 +02:00
Eberhard Graether d96baad91d src: Fixes for Release
* pass log directory absolute to indexers
* pass app and user paths absolute to indexers
* removed QCoreApplication instance from indexer process
* removed mutex from ConsoleLogger
* updated shortcut window
* renamed code reference menu items
2018-07-24 12:53:55 +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 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 e31624a4b7 src: switched to use only wstring for FilePath::filename and FilePath::extension 2018-02-09 17:04:17 +01:00
mlangkabel 683b87d0b8 src: use wstring in symbol search 2018-02-06 21:03:54 +01:00
mlangkabel f0b817eb0a src: broad refactoring to use FilePath.wstr() where easily possible 2018-02-06 11:35:36 +01:00
mlangkabel 9e041c1f0a logic: use wstring in symbol and bookmark names
* use wstring in symbol and bookmark names
* fixed setting apppath in windows includes
* regard utf8 encoding in shared indexer commands
* regard utf8 encoding in shared indexer status
2018-02-05 17:17:33 +01:00
mlangkabel c99e79364f logic: more wstring usages
* removed header paths from VS Project setup message since VS doesn't send these anymore
* implemented using wstring in IDE communication
* fixed retrieving filepaths from QtDirectoryListbox that contain special characters
* use wstring for source extensions
* added special character as file extension to FileManagerTestSuite
2018-01-30 17:07:51 +01:00
mlangkabel 0dda63f7ae logic: used wstring in FilePath constructor
* used wstring in FilePath constructor where easily possible
* added FilePath concatenate method that accepts string parameter
* implemented using only wstring in MessageStatus
* used wstring in config
2018-01-30 11:00:23 +01:00
mlangkabel 7ec02d28ea ui: Filepicker fixes
* don't reset filepath used to open file picker dialog for SaveFileDialog
* don't reset filepath used to open filepicker for OpenProject dialog
* fixed non-native file picker starts in wrong directory if provided with filename to open (instead of directory)
* fixed non-native dialog displays machines root directory if empty path is provided
2018-01-26 12:43:17 +01:00
mlangkabel 2c52425d99 ui: Showing indexing progress in windows task bar
* implemented showing indexing progress in windows taskbar button
* renamed TaskShowStatusDialog
* added "Qt5WinExtras.dll" for windows builds
2018-01-16 11:16:08 +01:00
Eberhard Graether 05ff92fdea ui: fixed Linux issues
* no outline style for push buttons
* show error when not using Sourcetrail.sh script in console instead of message box, which won't load
2018-01-12 15:12:14 +01:00
Eberhard Graether ea8ab3df8e ui: Custom style for dock widget title bars
* avoid style loading in every view on application start
* improved contrast of reference label
* moved Reset Window Layout action up in View menu
2018-01-05 01:06:49 +01:00
mlangkabel 8b21d57750 src: implemented move constructor/assignment for filepath
* improves indexing performance by roughly 5%
* switched to use uniqu_ptr for boost path to get rid of including boost in header
* added different methods to change the current FilePath or to make a copy and change that one
* used these methods appropriately throughout the code base
* removed exists() method from FileSystem because it is already contained in FilePath
* added const in some places
2017-12-23 10:28:25 +01:00
Eberhard Graether 76f5ee1dc0 ui: Fixed issues related to refresh
* don't clear single file code view on ui refresh
* don't refresh ui when clicking refresh
* do ui refresh with Alt + Refresh
2017-12-15 14:50:37 +01:00
mlangkabel 22b4d2a2b9 ui: changed wording from "licence" to "license" 2017-12-11 17:05:07 +01:00
mlangkabel 91b0c5d05f src: replaced references to NODE_FILE with call to isFile 2017-12-07 14:52:12 +01:00
Eberhard Graether f9e4afda77 logic: Added indexing mode to reindex incomplete files (issue #493, #496)
* added radio buttons to start indexing dialog
* don't block task scheduler thread while start indexing dialog is visible
* don't force whole project refresh on settings change
* added help button to start indexing dialog explaining indexing modes
* disable unavailable modes when project needs full refresh
* improved label texts on indexing dialogs
* added --incomplete flag to index command of commandline API
* fixed deletion of window stack elements
2017-12-03 22:30:09 +01:00
Eberhard Graether 506bf8ed6f ui: Scrollbar and dock widget separator style
* defined scrollbar style for Windows and Linux
* defined dock widget separator width and color
* some style fixes on linux
2017-11-25 23:06:47 +01:00
mlangkabel 90e17c5868 src: converted NodeType to a class
NodeType internally still uses the Type enum
2017-11-23 17:05:15 +01:00
Eberhard Graether dc16b3f45b ui: Explain differences of errors and how to fix them (issue #501)
* added help button next to filters in error table
* added menu action Help -> Fixing Errors
* added help button on indexing dialog
* show help message after first time indexing with errors, if not seen already
2017-11-09 12:01:33 +01:00
Eberhard Graether d57dd6dd9c ui: Fixed start screen not vanishing when opening project on double click on Mac 2017-10-19 22:37:49 +02:00
Eberhard Graether 8e908c2a78 logic: Added Non-Commercial Use option and removed trial mode
* Added non-commercial use option to enter license window
* Show enter license window on first start and force license selection
* Added ApplicationSettings migration that removed private/academic license and switches user to non-commercial mode
* Added commandline option to choose non-commercial use and provide better hints to license selection
* Removed trial mode

fortune cookie message = A secret admirer will soon send you a sign of affection.
2017-10-19 16:58:47 +02:00
Eberhard Graether c3a5405cc4 ui: Fixes for release
* Removed pointless overview bundles
* Updated EULA version
* renamed 'Find in View' to 'Find On-Screen'
2017-10-18 16:46:06 +02:00
Eberhard Graether 4fdff00908 ui: Fixed non-intentional vertical growth of search dock widget on window resize 2017-10-09 21:24:24 +02:00
Eberhard Graether 83c24c5cd0 src: Removed unused Log component and QtSplashScreen 2017-09-21 01:59:36 +02:00
Eberhard Graether 49caaa1b0b ui: show screen search by pressing / or ? 2017-09-19 14:30:55 +02:00
Eberhard Graether 95ef8c3eec ui: Added on-screen search feature (issue #79)
* Use menu action "Edit -> Find in View" or Ctrl + D
* UI displayed as search bar at bottom of main window
* Hide search bar with ECS or close button
* Entering a query searches in name of graph nodes and code contents of code view
* Use Enter to iterate through matches, well move match into view in graph and code view
* Checkboxes allow for adding/removing results for certain views
* Create Bookmark shortcut is now CTRL + S

bug id = 79
2017-09-19 14:00:40 +02:00
Eberhard Graether 4700cb802e ui: Start from home directory instead of working directory in first file dialog (issue #448)
bug id = 448
2017-08-31 16:30:37 +02:00
Eberhard Graether 1227ad313e logic: Fixed automatic update check only works on Qt thread 2017-08-23 16:15:22 +02:00
malte_langkabel 42b286909d logic: fixed showing Windows console and getting stuck while quitting
* fixed Sourcetrail being stuck while closing the application
* building Sourcetrail as Console application by default
* hiding console during runtime on Windows if Sourcetrail is started with GUI
2017-08-10 17:09:47 +02:00
Eberhard Graether 289ac4ab63 ui: Fixed show data and log folder menu actions not working for symlinks 2017-08-08 16:39:50 +02:00
Eberhard Graether 2305a74e6c logic: Added cross-compilation UI to CXX source group setup (issue #370)
Allows for defining specific target triple of architecture, vendor, OS and environment as set of dropdown lists
in CXX source group setup.

bug id = 370
2017-08-08 16:00:32 +02:00
Eberhard Graether ff65a3f285 logic: Added update checker connecting to online API
* connects to https://www.sourcetrail.com/api/v1/versions/latest
* sends information about OS, platform, license type, current version and a unique user token
* Automatic update check is enabled via Startscreen and performed once every 24 hours on window focus
* Update check can be forced by clicking on "check for new version" on start screen
* renamed TimePoint to TimeStamp

fortune cookie message = In Träumen und im Leben ist nichts unmöglich.
2017-08-08 14:18:14 +02:00
Eberhard Graether 63c81e27a2 ui: Window focus event sent when application changes state instead of main window
* Fixes tooltip disappearing when clicked on Windows
2017-08-01 19:15:10 +02:00