Commit Graph
80 Commits
Author SHA1 Message Date
mlangkabel 12bf007caf logic: fixed making paths relative for indexed header path detection 2018-06-01 15:11:01 +02:00
mlangkabel e43e604966 logic: fixed crash in include validation 2018-06-01 14:58:51 +02:00
mlangkabel 7b735cfd17 logic: added project setup support for Sonargraph projects (Java and CMake-JSON modules supported)
* added classes for loading a Sonargraph project
* added Sonargraph options to project setup wizard
* added test for generating indexer commands from Sonargraph modules
* fixed sqlite storage crashing in constructor when parent directory of provided path does not exist
* removed unused FileRegister from Java indexing
* removed unused info from IndexerCommandJava
* refactored loading and saving of SourceGroupSettings
* extracted sourcepaths settings to own class that can be re-used
* merged CDB wizard contentents for source file and indexed paths
* unified wizard content for sonargraph project path
* removed include filters from default source groups
* extracted generation of RefreshInfo from Project to RefreshInfoGenerator
* added tests for RefreshInfoGenerator
* added language and standard selection to sonargraph project setup
* added auto-detection for indexed header paths of sonargraph cmake json modules
* Sonargraph::Project can enable/disable support for specific modules
* warn if sonargraph project contains no matching modules
* indexed headers can be detected from sonargraph project
2018-05-18 16:07:57 +02:00
mlangkabel e1df15a7b9 ui: disable re-pre-filling of indexed header paths for compilation database sourcegroups (issue #579)
* disable re-pre-filling of indexed header paths if these are empty when showing settings of a cdb sourgroup
* fixed indexed header path were not regarded when deciding if project settings have been updated
2018-05-08 11:13:10 +02:00
mlangkabel a7ef02459a logic: fixed indexed header paths for compilation database project screw up the processing order of includes (issue #571)
* prevented indexed header paths for CDB to be appended to compile command
* fixed exists check for relative paths in QtSelectPathsDialog
* indexed header paths will automatically be updated when a new compilation database is picked
2018-04-27 17:51:03 +02:00
mlangkabel 535f7c1a9c ui: updated help dialog for Excluded Files & Directories with description of wildcards 2018-04-09 17:47:51 +02:00
Eberhard Graether 42ed53e71e src: Fixed clang warnings 2018-04-03 17:34:43 +02:00
mlangkabel 41e5d36c00 ui: changed caption of buttons in missing paths dialog 2018-04-03 16:05:00 +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
mlangkabel 6acfe0688f logic: implemented usage of FilePathFilters for excluded paths
* removed check in settings for existing paths of exclude filters
2018-03-12 08:51:38 +01:00
mlangkabel bae6bd73d6 src: replaced some usages of string by wstring in filepath 2018-02-26 15:03:28 +01:00
mlangkabel e3322adf2e src: switched to using only wstring for status message 2018-02-12 10:39:28 +01:00
mlangkabel 333fc7eea2 logic: switched to using wstring for compiler flags
* removed getter for strings from QtDirectoryListBox because it is not used anymore
* regard encoding of clang error messages
2018-02-09 13:37:30 +01:00
mlangkabel 5423d0b053 src: use wstring for showing text in QtTextEditDialog 2018-02-06 15:17:10 +01:00
mlangkabel f0b817eb0a src: broad refactoring to use FilePath.wstr() where easily possible 2018-02-06 11:35:36 +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
Eberhard Graether 393b601c16 ui: Fixed include detection did not always stop status bar progress after finishing
* Changed next button labels in include detection dialogs
2018-01-28 22:27:35 +01:00
mlangkabel 7c863ddf00 logic: improved include detection
* also search for include paths of include directives extracted from header search paths
* extracted logic to gather unsolved includes
* extracted some code to filetree class
2018-01-23 21:35:53 +01:00
Eberhard Graether e228f3477a ui: Fixed layout of QtPathListDialog 2018-01-09 17:27:33 +01:00
Eberhard Graether c479493e02 test: Fixed tests and removed test_log.txt
* Deleted PlainFileLogger
* Fixed clang warnings
2018-01-09 15:53:18 +01:00
mlangkabel 686ba504c2 ui: added automatic include path detection for C/C++ Source Groups 2018-01-09 12:13:16 +01:00
Eberhard Graether c17f7dd3d4 data: Fixed indexing performance regression in FileRegister
* removed debug cout uses
* add source paths first as header search paths
2018-01-02 23:15:05 +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 f849c9d01d ui: fixes in project setup and indexing
* allow to ignore missing paths in project setup
* button to remove missing paths in project setup
* fixed progress dialog stays on empty project indexing
* don't unblock ui between indexin steps
2017-12-20 22:48:37 +01:00
Eberhard Graether 99b0cf0ac9 ui: Group include validation results by file and add line breaks for readability 2017-12-11 22:59:48 +01:00
Eberhard Graether 0cf64d338b logic: Add parent directories of source files in the compilation database automatically to header paths 2017-11-08 23:40:28 +01:00
mlangkabel ee11528ddf ui: added individual help window titles 2017-10-25 09:56:31 +02:00
Eberhard Graether c73e58893e ui: Fixes in project setup
* fixed include paths fetched from CDB not canonical
* fixed content names
2017-10-25 00:57:28 +02:00
mlangkabel 609a37712d ui: added minor changes to the descriptions in the project wizard 2017-10-24 18:45:36 +02:00
mlangkabel d1536031c9 ui: revised project setup wizard
* adjusted some help texts
* moved exclude paths and source file extensions contents to indexed paths selection in project setup wizard
* removed compiler flags from CDB project setup wizard
* added wizard content that shows some info text regarding the purpose of source groups
* renamed ContentSummary to ContentGroup
* fixed issue with CompilationDatabase include path extraction
2017-10-23 16:10:54 +02:00
mlangkabel f0da5b630b ui: implemented prefilling indexed header paths for compilation database projects
* fixed header path detection in CompilationDatabase class
2017-10-11 17:08:13 +02:00
Eberhard Graether e3a6c3257e ui: Removed include check validation for cdb source groups 2017-10-09 21:38:04 +02:00
mlangkabel e604d24c40 logic: added Gradle project setup (issue #379)
* added implementation for Gradle project setup (icon is still missing)
* refactored project loading/saving and SourceGroupSettings
* removed long deprecated Cxx UseSourcePathsForHeaderSearch option

fortune cookie message = There is true and sincere friendship between you and your friends.
2017-10-02 18:43:59 +02:00
Eberhard Graether 09d78308be ui: Use QtTextEditDialog for include directive validation results 2017-08-22 23:46:40 +02:00
Andreas Stallinger 244c9af3c6 src: new signal slot syntax
SLOT()/SIGNAL() -> &class::method()
2017-08-01 12:35:33 +02:00
malte_langkabel 3a192c8089 ui: clean indexed header path selection
* for CDB projects the selection dialog for the indexed header paths now discards all paths that are subdirectories of other entries
2017-07-24 17:08:43 +02:00
malte_langkabel f2c7ecbbdf ui: add progress dialog for "show source files" button 2017-07-24 14:20:26 +02:00
malte_langkabel bec7aa4aac logic: add include path validation to project settings 2017-07-24 09:20:08 +02:00
malte_langkabel 9bcde198a5 logic: add auto-detection for JRE System Library
* fixed error columns are not saved to database correctly
* implemented setting JRE System Library paths in app settings
* added detector for JRE System Library that not use Java Runtime specified in AppSettings but detects JRE on its own by reusing the JavaPathDetector.
* added option to use JRE System Library in JavaSourceGroup
2017-07-10 18:12:52 +02:00
malte_langkabel 70b24f9097 ui: fix typo in info dialog 2017-06-21 12:16:01 +02:00
Eberhard Graether 9256618f7c ui: Extended project setup to support creation and editing of Source Groups (issue #230)
* Turned QtProjectWizzard into window for Source Group ui
* Clicking into FilePicker when empty will open dialog right away
* Fixed environment variable use throughout all Source Group path values
* Moved Preferences to QtPreferencesWindow

bug id = 230

fortune cookie message = Zwischen dir und deinen Freunden besteht echte Freundschaft.
2017-05-29 17:08:28 +02:00
malte_langkabel 6cb2119cce src: remove unused includes 2017-05-17 12:10:22 +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
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 8a93bebff8 logic: fixed a crash when saving the app settings 2017-02-13 13:14:56 +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
malte_langkabel 97b151371b ui: added initial auto-detection for cpp standard headers and java runtime library
* when Coati is started with no java-path or global cxx header or framework paths in the appsettings they are auto-detected using the first working detector
* order in which the detectors are shown in gui now matches the order they are added to the combined detector.
2016-10-12 19:10:03 +02:00
malte_langkabel ee7bf4e9b7 logic: auto-detection for java root source directories
* implemented auto-detecting root source directories for java projects
* revised help texts in java project setup
2016-10-07 11:44:14 +02:00
Andreas Stallinger 251eab6e9e ui: prefill headers from compilation database
dialog for selecting header paths from compilation database
2016-08-31 14:37:28 +02:00