Commit Graph
587 Commits
Author SHA1 Message Date
mlangkabel cc17dbe2ea ui: Remove EULA from GUI and Windows installer 2019-11-16 14:57:31 +01:00
mlangkabel c38117ab8b build: allow to disable language support in cmake
* in addition: add unloadable sourcegroup to visualize, load and save information when loading a project that contains source groups that are not supported by the build
2019-11-13 17:26:06 +01:00
mlangkabel ceb30020b5 src: removed sonargraph based project setup methods 2019-11-09 17:56:51 +01:00
Eberhard Graether 9281c237a7 ui: Refactored code component to handle all state changes in controller 2019-11-08 16:20:43 +01:00
mlangkabel 49050e1089 src: replaced unit test framework CxxTest with Catch2 2019-10-29 19:54:16 +01:00
Eberhard Graether 0d8e992bdf src: Removed everything license key related
* removed license check
* removed license from ApplicationSettings
* removed LicenseGenerator
* removed license tests
* removed lib_license
* removed dependency on Botan
* removed license generation in all scripts
2019-10-18 13:05:30 +02:00
mlangkabelandEberhard Graether e81315c131 logic: record inheritance edges for implicit template specializations 2019-10-18 13:05:29 +02:00
mlangkabelandEberhard Graether cd731a3798 logic: skip traversing unspecialized template method of implicit template class specialization 2019-10-18 13:05:29 +02:00
mlangkabelandEberhard Graether ee7dcc2d83 data: replace template member specialization edge by template specialization edge 2019-10-18 13:05:29 +02:00
mlangkabelandEberhard Graether 7a5d1f7d2b logic: record location of substituted template parameter as usage of concrete type
e.g. "return T();" in template function implicitly specialized with T=int records a usage of "int" at the location of "T()".
2019-10-18 13:05:28 +02:00
mlangkabelandEberhard Graether 0498d68f5b logic: skip recording qualifier of template parameter decl name (e.g."A<typename T>::T" -> "T") 2019-10-18 13:05:28 +02:00
mlangkabelandEberhard Graether 517dde06e4 logic: yield name of templated base for dependent template specialization 2019-10-18 13:05:28 +02:00
mlangkabelandEberhard Graether fc0e652ae0 data: Remove Template Argument reference kind and edge 2019-10-18 13:05:28 +02:00
mlangkabelandEberhard Graether 583046c291 data: reduce template related data types
* record template parameter as local symbol
* record template default args as type usage
2019-10-18 13:05:27 +02:00
mlangkabel 809f201583 data: update version of fallback Application Settings 2019-08-12 10:23:00 +02:00
Eberhard Graether 68c9782e33 ui: Added custom trail dialog (issue #249)
* open custom trail dialg via button in top of trail controls
* search from symbol to symbol or all referenced/referencing of symbol
* define search depth with slider
* define horizontal/vertical layout
* define node and edge types
* renamed depth graph to trail in graph ui
* added custom trail UI tests

fortune cookie message = A happy surprise is waiting for you.
2019-07-29 11:25:34 +02:00
mlangkabel e5b51ecebb data: updated version of sample projects 2019-05-28 18:59:26 +02:00
mlangkabel b607933e0f data: updated expected output for cxx indexer tests and source group tests for windows 2019-05-28 16:42:00 +02:00
Eberhard Graether 5084a11dec ui: Fixed annotation hovering slow in code snippet view due to style calculation from setting stylesheets 2019-05-28 14:30:23 +02:00
Eberhard Graether b6a39a2d66 logic: Don't store CxxCompilerHeaderPath in Global Include Paths
* show path in Global Include Paths preferences
* add to CXX indexer commands
* add migration to remove from app settings
2019-05-27 16:11:19 +02:00
Eberhard Graether 78eade475e data: Updated LLVM/Clang config headers to release 8.0.1 2019-05-20 14:10:34 +02:00
Eberhard Graether 018a65e0b6 data: renamed 'main' function in tutorial to 'start_tour' due to multiple main fix 2019-05-15 14:56:51 +02:00
mlangkabel 3106257692 ui: add python project icon 2019-05-07 16:28:29 +02:00
mlangkabel 76cb4e0dc9 data: added python sample project 2019-05-07 15:51:37 +02:00
mlangkabel b46b9d157d data: fix EULA date 2019-04-23 15:46:41 +02:00
Eberhard Graether 4984e23c07 ui: Increased contrast in bright color scheme 2019-04-23 13:08:34 +02:00
mlangkabel 92192659d9 ui: add python syntax highlighting for "self" 2019-04-09 14:13:57 +02:00
Eberhard Graether edf319cde9 data: removed directory data/gui/installer and moved EULA files to data/license
* moved EULA files to data/license
* moved 3rd party license to data/license
* updated paths in installer scripts
2019-04-08 18:25:13 +02:00
Eberhard Graether b02064a160 license: Implemented new license format
* Implemented new format splitting user, version, and usage period into separate lines
* Refactored all classes: License, LicenseGenerator, LicenseChecker
* Removed redundant license check hash from ApplicationSettings, don't generate, store and check it anymore
* Moved license checking and encoding logic to LicenseChecker
* Moved default for license generation to main.cpp
* Refactored license checking logic in whole app, removed involved message types
* Added LicenseCheckerTestSuite for checking all legacy and current license types
* Generate new license type lifelong
2019-03-18 14:49:52 +01:00
mlangkabel 6ff7d22641 data: update EULA to allow for lifelong licenses 2019-03-12 15:48:37 +01:00
mlangkabel b6031fdb3a ui: fixed tooltips were not resizing if app font size was changed on windows 2019-03-11 18:01:16 +01:00
mlangkabel 82a3c06a9d logic: implemented using regex capture ranges for syntax highlighting rules
* only first capture will be highlighted (-> only use one capture range per regex
* non-capturing braces can be used with start: "(?:" and end: ")"
2019-02-04 16:07:20 +01:00
Eberhard Graether f7eb1fc160 data: Added highlighting rules for Python
* fixed multiline highlights to work for any highlight type
* erase priority ranges contained within others
2019-02-03 15:53:40 +01:00
Eberhard Graether 7d30709306 logic: Fixes and improvements for C/C++ compiler header path handling
* Always add compiler header path when prefilling on first start, regardless of successful detection
* Show compiler header path in path list box on top and readonly
* Prepend compiler header path on Windows in system header path compiler flags, append otherwise
* Show warning when saving ApplicationSettings if compiler header path is not in global include paths
* Show warning when saving ApplicationSettings if there is another path containing compiler headers
2019-01-21 15:18:31 +01:00
mlangkabel e3c9f12012 logic: fixed initialization of header search paths on first start
* updated version of fallback ApplicationSettings.xml to current settings version
* removed is-empty-check when pre-filling settings at the first start of Sourcetrail
2019-01-14 17:22:22 +01:00
Eberhard Graether 53c4ac77cf bin: reverted accidental change in tictactoe sample 2019-01-08 14:31:34 +01:00
Eberhard Graether 54f989f6f5 ui: Also elide name of active node if it has more than 100 characters (issue #652) 2019-01-08 14:25:28 +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 6d5a3c047d logic: Added SourceGroupCustomCommand to use with SourcetrailDB binaries
* Added new Source Group type SourceGroupCustomCommand to UI and ProjectSettings
* The Source Group executes a specified command on every source file
* The variables $SOURCE_PATH, $PROJECT_PATH, $DB_PATH, $STORAGE_VERSION can be passed
* The commands are executed after all other source groups finished indexing
* The command is executed with working directory set to project directory
* Errors during command execution are shown as status update and in the Status View
* SourceGroupCustomCommand cannot be partially cleared, when one file needs clearing the project must be fully re-indexed
2018-12-11 14:05:26 +01:00
mlangkabel 21d947ed6c src: updated SymbolKind enum
* removed SymbolKinds for Parameter and LocalSymbol, because these are not stored as symbols inside the database
* added Module symbol kind for Python
2018-12-10 16:26:38 +01:00
Eberhard Graether a044e17fdc ui: Reduced code view snippet style 2018-11-30 22:40:07 +01:00
mlangkabel 3e16235c12 src: changed name of template parameter symbol kind 2018-11-16 12:52:57 +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
mlangkabel bff7b0d70a logic: added type usage edge for types that occur as template arguments 2018-11-02 13:27:44 +01:00
mlangkabel 05649977a6 data: updated 3rd party license info 2018-10-30 13:39:05 +01:00
mlangkabel 1497941c3d logic: skip recording implicit local symbols
* for example this would be the parameter of an implicitly defined copy constructor
2018-10-30 13:34:16 +01:00
mlangkabel d12570ccf9 data: updated expected output for Cxx sample project tests
* changed expected output of Bullet and Box2D to new formatting (without duplicates)
* minor additions due to clang update
* updated expected output of TicTacToe project with all headers indexed
2018-10-30 12:04:33 +01:00
Eberhard Graether f7b77b6f9c build: Updated to Clang 7.0.0 2018-10-26 14:23:26 +02: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 1e7a694c80 ui: Removed leading spaces in overview project description 2018-10-19 23:51:02 +02:00