Commit Graph
100 Commits
Author SHA1 Message Date
mlangkabel 40bd5ceb5a logic: improved "prepare indexing" performance for cxx sourcegroups
* improved performance of "prepare indexing" step for all cxx source groups except empty
* unified code for filtering to contained file paths of source groups
* cleaned up code of SourceGroupFactoryModules
2018-07-31 14:17:14 +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
mlangkabel 033ff82192 src: refactored cxx ast visitor code
* extracted brace recording code into own ast visitor component
* removed unnecessary cxx ast visitor code
2018-07-16 14:48:47 +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
mlangkabel 6bbb44309d logic: added support for Java 10
* updated java indexed and dependencies to support java 10
* added java indexer test for java 10 "var" support
2018-07-10 11:26:51 +02:00
mlangkabel 7c09f3339b ui: store and display translation unit of recorded indexing errors 2018-07-02 13:00:41 +02:00
Eberhard Graether c91207cfe9 java: Updated .jar dependencies 2018-06-29 13:25:28 +02:00
mlangkabel c65a5d04b1 logic: cleaned up code for SourceGroupSettings and Wizzard
* Flattened sourcegroupsettings class hierarchy by moving cross compilation options to own base class
* QtProjectWizzardContentFlags constructor required correct settings object to reduce the need for type casting
* QtProjectWizzardContentPath constructors required correct settings objects
* moved SourcePaths from SourceGroupSettingsJava to SourceGroupSettingsJavaEmpty because they are not required for Gradle and Maven projects
* removed classpath from maven and gradle source group settings
* reuse code of SourceGroup for "show source files" in wizard
2018-06-12 21:16:51 +02:00
mlangkabel 704808b26f logic: added C/C++ project setup from Code::Blocks
* also changed xml elements in sourcegroup settings that specify the used language standard, so that one sourcegroup can maintain multiple language standards
* added migration and migrated sample projects
2018-06-08 12:10:38 +02:00
mlangkabel 31920972eb logic: added "serialize" method for indexer commands 2018-06-05 11:45:03 +02:00
mlangkabel 3cc51e0d01 logic: sonargraph fixes
* updated sonargraph project icon
* fixed Sonargraph SourceGroup to only return indexer commands for requested files
* fixed refresh info generator to ignore non-existing files
2018-06-04 19:05:54 +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 9af5780c12 src: added language package classes and moved indexer instantiation there 2018-04-27 18:02:32 +02:00
mlangkabel ca3e2f48ee logic: removed C/C++ "unparsed" check from indexer
Cxx AstVisitor re-visits previously or simultaneously indexed files because the "visible" content may have changed due to other preprocessor defines etc.
2018-04-24 13:25:06 +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
mlangkabel af1657f7e5 build: updated jar dependencies 2018-03-30 18:17:10 +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 b2bad8ab05 logic: fixed handling non-ascii characters in cdb path and in cdb filename and command 2018-02-13 16:10:10 +01:00
mlangkabel e3322adf2e src: switched to using only wstring for status message 2018-02-12 10:39:28 +01:00
mlangkabel e31624a4b7 src: switched to use only wstring for FilePath::filename and FilePath::extension 2018-02-09 17:04:17 +01:00
mlangkabel 70d619a173 logic: implemented handling of non-ASCII characters in Gradle and Maven project paths
* also: fixed loading sqlite database from path with non-ascii characters
2018-02-09 15:54:28 +01:00
mlangkabel f0b817eb0a src: broad refactoring to use FilePath.wstr() where easily possible 2018-02-06 11:35:36 +01:00
Eberhard Graether f943d93335 src: wstring fixes for clang 2018-02-05 18:17:13 +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 ce72797ce2 src: Move string conversion from lib_gui to lib and use boost instead of Qt 2018-01-30 13:14:07 +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 cad064b9da logic: implemented disabling of source groups
* added source group status (enabled/disabled)
* fixed bug where the removal of an indexed directory has not affected the files to clear
* added lots of const and override keywords in SourceGroupSettings
2018-01-15 14:39:15 +01:00
mlangkabel 978cf4f4ed logic: fixed Maven setup not working for project without sub-modules 2018-01-08 16:38:31 +01:00
mlangkabel 4686ce7e91 src: fixed some clang tidy warnings
* implemented CxxDeclName constructors that just move the members
* removed empty destructors because they disable default move constructors
* removed some unnecessary code
* replaced ".size() == 0" with ".empty()" because it's more explicit
2017-12-27 18:46:56 +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
mlangkabel 30d4e61bb6 src: windows compilation fixes
* fixed msvc compiler error
* updated required jar names
2017-12-21 12:42:37 +01:00
mlangkabel 928aa45bfc data: removed storing commandline for errors
* reason: commandline string may be large (7GB for 20k errors in the UnrealEngine)
2017-12-12 10:04:44 +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
mlangkabel 952ea1651f src: renamed recording methods 2017-11-19 13:44:10 +01:00
mlangkabel 634601b4b6 logic: fixed crash when specifying an unknown text encoding in appsettings
* also: updated jar dependencies
2017-11-17 13:03:05 +01:00
Eberhard Graether ead9f9a634 logic: Allow duplicate indexing of source files if the indexer command is different 2017-11-09 17:24:28 +01:00
Eberhard Graether a2d412ccfa logic: add contained symlinked directories to indexed and excluded paths 2017-11-07 13:43:50 +01:00
mlangkabel 6fad9eea84 logic: added all previous java version to Java language standard selection 2017-11-06 18:49:29 +01:00
mlangkabel 8dbfa61234 logic: minor gradle project setup fix 2017-10-31 17:12:37 +01:00
mlangkabel 0d993011d8 data: updated eclipse dependencies for java indexing
* updated java indexer to use org.eclipse.jdt.core version 3.13.0.
* added test that checks if all jar dependencies can be found.
2017-10-18 14:52:14 +02:00
Eberhard Graether a7363b329b logic: Use sizeof(SharedMemory::String) in shared memory size estimation instead of std::string (issue #471) 2017-10-13 12:26:45 +02:00
mlangkabel cf984ca245 logic: name qualifiers of symbols are clickable now 2017-10-11 11:08:01 +02:00
mlangkabel 798944ff38 ui: implemented showing gradle errors in UI 2017-10-03 16:19:07 +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
mlangkabel 5c614c77e2 src: moved Java indexer from JavaSymbolSolver to Eclipse JDT
* added some more tests
* changed 3rd party licenses respectively

fortune cookie message = Your present plans are going to succeed.
2017-09-07 12:40:34 +02:00
mlangkabel 64efa00054 logic: improved Maven timeout policy (issue #449)
* only timeout if Maven did not generate output during the last 60 seconds
2017-08-29 14:15:11 +02:00
malte_langkabel 70997adc9c logic: greatly improved Java indexing performance
* about 120% faster now
* also fixed minor synchronization issues
2017-08-17 13:28:00 +02:00
Andreas Stallinger 37ead804bf src: clazy compiler warnings
get rid of most clazy warnings (https://github.com/KDE/clazy)
* range loop use refs
* qcolor ctor with ints
* missing Q_OBJECT macro
* use .constfirst instead of .first

enabled ccache for unix systems for fasterr recompiling
* if ccache is in path we use it now
2017-08-10 09:45:55 +02:00
Eberhard Graether 2e375112e6 data: Save command line info for CXX indexer commands to errors and show within errors table (issue #351)
bug id = 351
2017-08-09 12:16:16 +02:00