Compare commits

...
1197 Commits
Author SHA1 Message Date
Andreas Stallinger 19ed6cb372 logic: versioning 2017-06-12 09:14:21 +02:00
Andreas Stallinger 419a2e27ba ui: subwindow when resize mainwindow
* disable drop in qtlineedit
    fixes bug where when file is dropped in the lineedit with text,
    the the file will be added as text midst the existing text
* move message to start from script before layout loading so it will load right
(only when started without script on linux)
* center subwindow when mainwindow size changes
2017-06-08 20:42:32 +02:00
malte_langkabel 699de2ee0a build: improve convenience for running Visual Studio plugin integration tests
* added testsettings file that causes Visual Studio to use the current build of the
    extension when running the integration tests. So no more uninstalling and installing
	of the extension before running the tests.
2017-06-08 14:57:18 +02:00
Andreas Stallinger 3ca6f266c7 build: name for artifacts from tagged jobs 2017-06-08 13:48:50 +02:00
Eberhard Graether 24894aa96f ui: More fixes for release
* Fixed graph resizing invoked during animation
* Clearin history when clearing UndoRedoController
* Fixed no hatching in single code view file button
2017-06-08 12:45:56 +02:00
Andreas Stallinger deed335a10 linux script start
warning when starting without script on linux
2017-06-08 12:13:36 +02:00
Eberhard Graether 3e62367af0 src: More fixes for release
* Show declname in java import error
* Don't clear window stack when saving preferences
* Fixed spacing in source group UI, status view and error view
* Resize graph scene rect when widget is resized
* Graph node centering respect no animation preference
* Fixed undoing of view commands
* Avoid scrollbar jump when restoring graph scroll position
* Deactivate local symbols in code when clicking into empty space
2017-06-08 00:35:31 +02:00
Eberhard Graether 610dbf5bfb src: Fixes for release
* Fixed annotations in code view when showing errors
* Fixed context menu hatched for non-indexed/incomplete file button
* Fixed file minimize button losing hover style when leaving to file bar
* Fixed only change bookmark button state when active node is bookmarked
* Fixed use bezier edges when expanding node on aggregation graph
* Fixed manually expanded nodes stay expanded
2017-06-07 17:46:16 +02:00
malte_langkabel 2b1098fe1d logic: disable Java errors for on-demand imports
* don't try to resolve an import that ends in an asterisk. these can be either type names or package names and it it's a package we have no way to find out whether or not such a package exists.
2017-06-07 17:37:19 +02:00
Andreas Stallinger 255fea62af ui: restrict subwindow movement
restrict subwindow movement to mainwindow
to make sure you cant move it were you dont see it
2017-06-07 17:21:54 +02:00
malte_langkabel 38e016c909 build: update list of installed files for windows deployment 2017-06-07 15:49:49 +02:00
Andreas Stallinger 59cece1707 ui: fixed historylist popup disapearing 2017-06-07 15:39:39 +02:00
Eberhard Graether 469789f994 build: Changelog for 1.0 2017-06-07 14:56:02 +02:00
Eberhard Graether 503ca76a40 ui: Use window decorations on dialog windows (issue #376)
* added SubWindow flag to QtWindow to either use window decorations or show window within main window
* fixes black borders in some Linux window managers

bug id = 376

fortune cookie message = Your skill will accomplish what the force of many others cannot.
2017-06-07 14:40:16 +02:00
malte_langkabel fb5bb33a10 logic: fix bookmark migration for Java projects
testing if currently loaded project is a Java project and setting delimiter for node names in bookmark tables accordingly.
2017-06-07 13:40:18 +02:00
malte_langkabel 21f963d652 logic: indexer fixes for java imports
* fixed solving import for statically imported member types
* enabled recording of fatal errors when an importing a type
* added AstVisitorClient for improved abstraction and debugging purposes
2017-06-07 13:00:20 +02:00
malte_langkabel b659e81515 logic: fix more Visual Studio plugin issues
* using .Net framework version 4.6.1 in all projects
* implemented exception handling in VCFileWrapperFactory
* moved logging in separate assembly
* enabled logging in wrapper code
2017-06-06 15:46:14 +02:00
Eberhard Graether fc36cc25ca ui: Improved code view UI
* reduced minimized file state to one-colored block
* added hover states to file buttons
* show hover state when hovering title bar
* fixed file button use for overview stats snippet
2017-06-05 23:46:50 +02:00
Eberhard Graether 71b3bdb26b logic: Improved code view performance
* Don't set stylesheet for every token activation
* Streamlined code area creation steps
* Delay most syntax highlighting until lines become visible
2017-06-05 23:34:20 +02:00
malte_langkabel 30e6512d71 logic: fixed versions of Visual Studio plugin assemblies 2017-06-05 16:11:09 +02:00
malte_langkabel f31c0ae3ba logic: Visual Studio plugin improvements
* changed dll version handling to be automated
* added some additional logging
* improved VCProjectWrapperFactory
2017-06-05 15:14:55 +02:00
Eberhard Graether de645be37a logic: Refactored Code View to process all contents in one update
* Use unified showCodeSnippets method for setting file information on CodeView
* Made async initial file and snippet expansion synced
* Add ScrollParams API to CodeView
* Regard scope size when scrolling to definition
* Only use QtThreadedLambdaFunctor in QtCodeView now
2017-06-05 14:23:43 +02:00
malte_langkabel 893b223bbc logic: record more import not found errors
* record "import not found" error when imported type cannot be resolved
2017-06-05 11:08:07 +02:00
malte_langkabel 7010b9a6fb logic: update Visual Studio plugin to support Visual Studio 2017
* changed description text of Visual Studio plugin
* changed plugin install targets to include VS 2017
* add license file with MIT license
* updated vsix for deployment

* implement wrapper for all used classes of VCProjectEngine.dll since you cannot just use the oldest version of this
  assembly (see https://stackoverflow.com/questions/44288050/typecast-fails-when-visual-studio-extension-uses-reference-to-older-assembly).
* improved serialization and deserialization of compile commands and compilation databases.
* updated used JSON package
* rename CommandObject to CompileCommand
* changed implementation to keep non-existent file paths in cdb
* made methods of SolutionParser non-static
* replace spaces with tabs

* added IntegrationTests project
* configured tests to simulate a new instance of VisualStudio
* added cinder as test project for integration tests
* remove all absolute paths from expected output of integration tests

fortune cookie message = A stranger will bring great meaning to your life.
2017-06-02 14:48:29 +02:00
Eberhard Graether aaca8618e2 logic: Only request unconnected child nodes when expanding node
* increases graph performance by ~30%
2017-06-01 14:48:03 +02:00
Eberhard Graether 8660ab5b14 build: Codesign MacOS app bundle to avoid "from unidentified developer" warning
fortune cookie message = Der Stern des Reichtums wird in Kürze auf dich scheinen
2017-05-31 16:23:25 +02:00
Eberhard Graether 8ab0abbe69 data: Added exception handling to database index 2017-05-31 14:07:21 +02:00
Eberhard Graether b79891693b ui: Fixed errors always shown after indexing 2017-05-31 13:44:58 +02:00
Eberhard Graether 8a6def2d7a ui: Fixes for source group ui
* added final icons
* fixed inconsistent names on copy
* fixed files list for cdb groups not updated
2017-05-31 13:33:34 +02:00
Eberhard Graether 539377339a ui: finalized design for history list 2017-05-31 12:31:11 +02:00
Eberhard Graether 29cfbe0f66 logic: error limit and better user experience (issue #385)
* only show up to 1000 errors in table and code view
* click button in bottom right of error table to show all
* same error order in code and table
* highlight error line when switching reference in code view
* improved error view performance

bug id = 385
2017-05-30 23:11:20 +02:00
Eberhard Graether a34abe6b4b ui: fixes and improvements in graph
* use bezier edges for aggregations
* fixed expanding nodes in trail graph makes trouble
* fixed hovering of edges at arrow
2017-05-30 15:08:01 +02:00
Eberhard Graether f760b873b4 logic: Fixed source files indexed multiple times when in multiple source groups 2017-05-30 12:17:18 +02:00
Eberhard Graether 561284ef5a ui: fixes
* Fixed send ping after changing plugin ports
* Fixed can't close EULA window
2017-05-30 11:55:01 +02:00
Eberhard Graether 7d5d19fde7 utility: Fixed License location check for CI 2017-05-30 08:59:52 +02:00
Eberhard Graether bd40294a2c ui: Added menu action to display EULA and force accepting on Mac 2017-05-30 00:30:52 +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
Eberhard Graether 13f7acbb70 data: Fixed no indexer commands created for relative file paths in cdb (issue #388)
bug id = 388
2017-05-23 11:42:39 +02:00
malte_langkabel 9b73d73a85 ui: display an error when loading a Clang Compilation Database fails 2017-05-23 09:35:58 +02:00
Eberhard Graether 082dfc2e1a logic: Fixed source files within CDB not indexed unless within Indexed Header Paths 2017-05-22 23:02:35 +02:00
Eberhard Graether 3598fd357d ui: Fixed status messages influence window resizing (issue #372)
bug id = 372
2017-05-19 15:21:34 +02:00
Eberhard Graether 5c21f23219 logic: match source file extensions case insensitive (issue #384)
bug id = 384
2017-05-19 14:39:45 +02:00
Eberhard Graether 65b5bd47f6 logic: Fixed indexing progress file count in status bar and status view (issue #387)
bug id = 387
2017-05-19 14:26:52 +02:00
Eberhard Graether 9088de8105 ui: History list polishing
* Fixed fulltext searches not included
* Show smaller colored indicator in front of list items
* Font weight bold on history list item hover
2017-05-19 14:08:56 +02:00
Eberhard Graether 9a100cd0c0 web: fixed fastspring test store link in blog navigation 2017-05-19 00:40:50 +02:00
malte_langkabel 655e0f15b0 build: remove dlls from windows deploy package
* no dlls required anymore since we removed the setup.exe earlier which was the only C++ binary requiring those dlls.
2017-05-18 10:15:35 +02:00
Eberhard Graether 83356e58ee src: Fixed clang build 2017-05-17 13:02:38 +02:00
malte_langkabel 6cb2119cce src: remove unused includes 2017-05-17 12:10:22 +02:00
Eberhard Graether ea3fd8b928 build: updated changlog for release 0.12.25
* and fixed clang warnings
2017-05-16 16:38:34 +02:00
Eberhard Graether 7cef92cb20 web: blog post for Release 0.12 2017-05-16 16:32:15 +02:00
Eberhard Graether d4e5808524 src: Fixed clang issues 2017-05-16 16:30:50 +02:00
malte_langkabel 4d140e396a src: add IndexerCommandType that will be used instead of string 2017-05-16 15:29:46 +02:00
Andreas Stallinger 80016596df logic: fix missing typename 2017-05-16 11:42:09 +00:00
malte_langkabel c551c9a1dd logic: add name delimiter to NameHierarchy
* NameHierarchy now looks like this: <delimiter>\tm<all the rest>
* made new baseclasses for SettingsMigration and SettingsMigrator
* Use the migration system for SqliteBookmarkStorage as well
2017-05-16 13:08:12 +02:00
Eberhard Graether 6d0f633d24 web: updated documentation
* maven project setup
* reset layout option
* use 0 indexer threads for auto-detection
* multi process setting
* bookmarking
* depth graph
* updated menu and shortcuts
* updated images
2017-05-16 10:52:52 +02:00
malte_langkabel c58b6ae23c logic: fix properly create sqlite indices when changing DB mode 2017-05-16 10:08:26 +02:00
Eberhard Graether d1a1552b8d logic: run MessageActivateAll also in parallel 2017-05-15 12:28:04 +02:00
Eberhard Graether 33452aaa0b build: Added QtCreator plugin to MacOS package 2017-05-15 12:25:13 +02:00
malte_langkabel 4a5b5c2e51 build: rename plugin directory for QtCreator and add this folder to windows package 2017-05-15 12:17:57 +02:00
malte_langkabel 00c696b385 logic: switch back to handling messages in sequence by default
* handling all messages in parallel caused UI synchronization issues
* for now the only message that requests to be handled in parallel is MessageActivateTokens
2017-05-15 11:59:15 +02:00
Eberhard Graether 0d244b0224 utility: Fixed message buffer might become empty while applying message filters 2017-05-15 11:31:10 +02:00
Andreas Stallinger 9937b9beeb documentation: fixed wrong imagename 2017-05-15 10:26:58 +02:00
Andreas Stallinger 6a90ee367c documentation: qt creator plugin
removed sublime text image in qt creator section
2017-05-15 10:20:34 +02:00
Andreas Stallinger 9d91e86e1e documenation: qt creator plugin
added qt creator plugin
2017-05-15 10:17:35 +02:00
Eberhard Graether c94b5f34a3 ui: Create bookmarks from graph context menu for node under mouse cursor (issue #373)
bug id = 373
2017-05-15 00:45:50 +02:00
Eberhard Graether 6de0021f70 ui: Fixed code view single file not scrolled to first fulltext search result 2017-05-14 20:08:25 +02:00
Eberhard Graether 3dfc0cb341 utility: Added MessageFilter API to messaging
* filter out focus in and out messages if both in queue
* filter out search autocomplete when multiple in queue
2017-05-14 19:39:05 +02:00
Eberhard Graether 6193ae9209 logic: Fixes for shared memory
* set unrestricted permissions on shared memory allocation to fix crash on Windows
* log exceptions during shared memory creation and destruction
* create SharedMemoryGarbageCollector after logging was enabled
2017-05-12 01:53:37 +02:00
malte_langkabel 40157039b4 src: use FilePath in FileSystem::getFileNamesFromDirectory 2017-05-11 16:30:14 +02:00
malte_langkabel 156c3d4b9f src: refactor UUIDUtility to conform with our coding conventions 2017-05-11 15:02:07 +02:00
Andreas Stallinger 4dcfe34485 logic: fixed template error on linux 2017-05-11 13:48:21 +02:00
malte_langkabel d160f38cbd build: remove setup.exe from windows package
* removed the exe since it does nothing but call the msi
* also fixed a missing include when building with DEPLOY on windows
2017-05-11 13:12:36 +02:00
malte_langkabel 1d1acc32f4 ui: improve item descriptions in application settings dialog 2017-05-11 11:15:44 +02:00
malte_langkabel 8a92453d60 logic: fix update of Java indexer to new version of Java dependencies
* reapplied previous reverts
* added cache for TypeSolvers in Java code
2017-05-10 17:54:21 +02:00
Andreas Stallinger f9a6c1ac09 build: remove manual build from master branch 2017-05-10 16:42:16 +02:00
Andreas Stallinger df7cdd2e7c build: gitlabci - job for licensegen and cleanup
* using template in yaml
* job for keygen added
2017-05-10 16:25:32 +02:00
Andreas Stallinger d100aca5fc build: gitlab-ci names for artifacts
* names for gitlab artifacts
* fix Linux package qt platforms lib
2017-05-10 16:09:43 +02:00
Eberhard Graether 960ca6703e logic: Fix indexing progress dialog not updated when fetching storage 2017-05-10 15:52:24 +02:00
Andreas Stallinger 2136e30a48 build: fixes to build on linux
*   dont use Q_PROCESSOR macros for 32/64 getArchitectureType
    move the function from lib_gui to lib
*   added missing include
2017-05-10 15:33:31 +02:00
Eberhard Graether f3cd9a1770 data: Fixed inconsistent node data in IntermediateStorage 2017-05-10 13:24:32 +02:00
Eberhard Graether 4b9c9858b7 data: Save timestamp of project indexing and show it in overview 2017-05-09 23:47:34 +02:00
Eberhard Graether 3fdd24f038 data: Fixes in indexing
* Show status update for every indexed translation unit and only once
* Save nodes in same order they were indexed
2017-05-09 22:55:49 +02:00
Eberhard Graether f4caacacf2 ui: Added history of last active symbols to UI and menu (issue 151)
* holding down back or forward button shows list of current back-forward stack
* added narrow button between back and forward to show the list
* added History menu
* moved back and forward actions to History menu
* show chronological list of recently active symbols in History menu

bug id = 151

fortune cookie message = Dein Geschäft wird gut laufen und expandieren.
2017-05-09 17:14:43 +02:00
Eberhard Graether bb8c2ae5a9 data: Set correct name delimiter per language in parsers 2017-05-09 16:25:58 +02:00
malte_langkabel 329544530d logic: fix crash when running 32 and 64 bit versions in parallel
fixed by making memory name of garbage collector depend on architecture type of sourcetrail binary
2017-05-09 15:07:18 +02:00
Eberhard Graether f3de8b5ae4 ui: Changed menu action to "Bookmark Active Symbol" 2017-05-08 17:15:54 +02:00
Eberhard Graether c0e3726b2d build: Changelog for 0.12 (beta) 2017-05-08 17:13:31 +02:00
Andreas Stallinger 12a3c7750f script: linux deinstall script fix
* linux deinstall script replaced / with -
* added categories in sourcetrail.desktop
2017-05-08 12:49:33 +00:00
Eberhard Graether 14fa67b909 logic: Limit multi process indexing to projects with C/C++ source groups 2017-05-08 14:45:37 +02:00
Eberhard Graether ad1a48bce4 Revert "logic: update java indexer to new version of Java dependencies"
This reverts commit da2b44bd25.
2017-05-08 14:17:22 +02:00
Eberhard Graether a224d42079 Revert "logic: java update linux"
This reverts commit 3864dc1fb1.
2017-05-08 14:17:03 +02:00
Eberhard Graether cacd97fa9c Revert "logic: update java on MacOS"
This reverts commit fa329be35f.
2017-05-08 14:16:34 +02:00
malte_langkabel f65aee612a build: fix windows CMake error
* fixed by converting backslashes in boost path to slashes
2017-05-08 14:03:15 +02:00
Eberhard Graether a1a709b049 logic: Fix trail graph check in MessageFlushUpdates handler of GraphController 2017-05-08 12:28:06 +02:00
Andreas Stallinger b729bf0a9a build: symlink for test/data 2017-05-08 07:18:23 +00:00
Eberhard Graether e5cad53e85 ui: Click edges in trail to show source location 2017-05-06 22:56:17 +02:00
Andreas Stallinger f5979f5ead build: fix missing include for linux
added thread include
2017-05-05 20:12:10 +00:00
malte_langkabel e8a24d3d98 logic: release fixes
* disable windows error dialogs on application crash for indexer target
* show indexing dialog at the start of indexing task instead of waiting for processes to start
* fix escaping path to binary for indexer process
* join garbagecollector thread when stopping
* fix compile errors related to FilePath in deploy mode on windows
2017-05-05 16:37:48 +02:00
Eberhard Graether 562e623930 utility: use non throwing try_lock approach when creating named mutex for shared memory 2017-05-05 16:31:51 +02:00
Eberhard Graether 8f44ad4a47 ui: Fixes for release
* updated keyboard shortcuts
* graph zooming also with Ctrl + Mouse Wheel
* display include and macro edges behind nodes
* allow more file search results
2017-05-05 12:40:51 +02:00
Eberhard Graether 9c6114336c data: Fixed TaskBuildIndex stops fetching when indexer commands are out and waits for indexer threads to stop first 2017-05-05 12:37:16 +02:00
Eberhard Graether fa329be35f logic: update java on MacOS 2017-05-05 12:35:59 +02:00
Andreas Stallinger 3864dc1fb1 logic: java update linux 2017-05-05 10:05:27 +00:00
malte_langkabel c93d5aa9f0 ui: add dialog to warn about active "verbose indexer logging" on refresh
* also featuring: remove unnecessary call in ParserClientImpl
2017-05-05 11:37:25 +02:00
malte_langkabel da2b44bd25 logic: update java indexer to new version of Java dependencies
* JavaSymbolSolver: Commit fac13d99
* JavaParser: Tag 3.2.0
2017-05-04 17:06:28 +02:00
Eberhard Graether d096106ec5 ui: improvements on trail layout
* increased spacing around graph
* fixed graph lagging on message focus out
* fixed level assignment fails
* fixed dead ends in cyclic graph removal
* improved node positioning by grouping to same average position
* fixed graph image export not centering graph
* fixed black dot at graph origin
* show status updates while creating trails
2017-05-04 16:46:17 +02:00
Eberhard Graether 706119ebcc data: indexer processes
* TaskBuildIndex starts seperate indexer processes and communicates via shared memory
* indexer processes get restarted if they fail
* indexer processes are killed when the app closes or crashes
* added utility class SharedMemory to allocate and access shared memory, providing basic data structures
* added SharedMemoryGarbageCollector for keeping track of running instances and cleaning up shared memory in case of a crash
* show errors for source files that crashed during indexing
* added basic exception handling to task scheduling
* added option to turn off processes and use threads in preferences, but still use shared memory

fortune cookie message = Good news from someone dear is coming soon.
2017-05-04 15:50:59 +02:00
Eberhard Graether 9beea94fd8 src: Removed ApplicationStateMonitor 2017-05-04 13:49:38 +02:00
Andreas Stallinger 29b07473fe src: fix filepath refactoring on linux
<description>
2017-05-04 12:33:28 +02:00
Eberhard Graether e8c01ae2ce logic: Fixed concurrency issues in TaskGroupParallel causing scheduler freeze 2017-05-04 11:57:52 +02:00
Eberhard Graether 74da2c7de9 src: fixes for FilePath refactoring on clang 2017-05-04 11:54:45 +02:00
malte_langkabel f46e9866fb build: try to fix compile error in our linux pipeline 2017-05-04 11:17:36 +02:00
malte_langkabel 054b8fab17 logic: reduce access to filesystem while indexing
* use canonical filepath cache in cxx indexer
* made constructors of FilePath explicit
* use FilePath at more places instead of string
* forward declares FilePath wherever possible
2017-05-04 10:55:16 +02:00
Andreas Stallinger 55d3f9c189 fix: 64bit builder segault
returning a bool seem to cause a seg fault on the linux 64 bit builder
since it is not used anyway i changed it back to the void return.
(dont know why it is a seg fault)
2017-05-03 11:22:28 +00:00
Eberhard Graether e33be096a6 logic: Disable bookmark creation when overview or errors are shown 2017-04-26 16:44:49 +02:00
Eberhard Graether b98444c15e ui: styled trail navigation
* added icons to buttons
* added toggle for collapsing and expanding controls
* added controls visibility to app settings
* fixed low contrast for disabled buttons in bright color scheme
2017-04-26 15:38:55 +02:00
malte_langkabel bf094b52da logic: fix initialization of source groups
SourceGroups have been initialized with wrong default values which
have later been used to write for writing the ProjectSettings file
if not overwritten.
2017-04-26 11:24:13 +02:00
Eberhard Graether 0468168d61 ui: Fixes and improvements for bookmarks
* moved bookmark buttons behind search bar
* suggest qualified name when creating, file name for files
* fixed bug when updating bookmark category
* changed comment toggle arrow
* changed edit and delete icons
* fixed undo for edge bookmarks
* keep categories always alphabetical regardless of subsorting
* keep category expansion state when opening and closing browser
* removed QtBookmarkBar, moved logic into QtBookmarkView
* added bookmarks Menu with shortcuts
	Ctrl + D: Create Bookmark
	Ctrl + B: Bookmark Manager
2017-04-26 00:33:34 +02:00
malte_langkabel 4ac41de61e web: fix inaccuracies in the documentation 2017-04-25 17:20:59 +02:00
malte_langkabel f6f7861ff1 logic: improve SQLite injection performance
* removed unique constraints again and added manual checks and db indices
2017-04-25 13:19:43 +02:00
malte_langkabel e669064452 logic: Add unique constraints to SQLite tables 2017-04-24 17:38:16 +02:00
Eberhard Graether 4bfe59df76 data: Fixed file complete flag not set when retrieving single source locations in SourceLocationCollection 2017-04-24 01:46:42 +02:00
Eberhard Graether f0b7dcdcdd ui: Show call graphs, inheritance trees and include trees for active symbol (issue 249 337)
* Added TrailLayouter with Sugiyama dependency layouting
* Layouter supports horizontal and vertical layouts
* Added basic ui to graph view for showing incoming and outgoing paths
* Added depth slider, with infinity at maximum
* Disable trail ui when not available
* Added trail messages to undo stack and only use last one when undoing
* Added QtGraphLineBezier for trail graphs and refactored other line types
* Disabled edge activation for trail layouts, shown only visually
* Highlight all connected edges when hovering a node in trail layout
* Use different color when highlighting call edges for better contrast
* Fixed BucketLayouter issue when edge does not leave node
* Increased click area for angled edges

bug id = 249 337

fortune cookie message = Answer just what the heart prompts to you.
2017-04-24 01:14:53 +02:00
Eberhard Graether 01bd0efefb logic: run message handling in parallel per message 2017-04-19 14:26:28 +02:00
Eberhard Graether 33ff346d3b logic: Fixed refresh not recognizing added files 2017-04-19 14:03:10 +02:00
Eberhard Graether 9d718d6a87 logic: Show unknown progress dialog when refreshing (issue 341)
* refactored dialog handling
* Application always provides a DialogView instance

bug id = 341
2017-04-19 13:04:46 +02:00
Eberhard Graether c4deca4662 ui: Added show files button to summary of compilation database project setup (issue 354)
bug id = 354
2017-04-18 22:41:41 +02:00
Eberhard Graether 63087913bd data: Option to run only C/C++ preprocessor when indexing (issue 297)
* Added as checkbox to indexing start dialog
* Only shown for C/C++ projects
* Files will be marked incomplete
2017-04-18 22:11:20 +02:00
malte_langkabel 2b24b88745 data: bookmark refactoring
* implemented handling of aggregations in bookmarks
* split index Storage and bookmark storage
* each sqlite database has its own version now
* added bookmark tests
* fixed creating bookmark tables when project can be loaded but bookmark db does not exist
* fixed font size for bookmarkview tooltips
* using bookmark cache now
* using default category name when none specified by the user
* raising bookmark windows when they should be shown
* clearing a bookmark or category in the editor will now update the star icon accordingly
* non-persistent bookmarks use ids of nodes and edges now (instead of names)
* git ignore .srctrlbm files
2017-04-17 10:55:59 +02:00
Eberhard Graether 6cd6552343 data: improvements on error management
* mark all files with errors as incomplete
* fix incomplete label in codeview tooltip not updated properly
* added setting for canceling indexing for files with fatal errors
2017-04-15 17:57:20 +02:00
Eberhard Graether 8dc5ac7cbe data: stop indexing of files with fatal errors and store them as incomplete (issue 358)
* avoid AST traversial for CXX translation units with fatal errors
* save all files within those translation units as incomplete
* show number of complete files in finished indexing dialog and overview stats
* display incomplete files hatched in graph view
* display incomplete file titles hatched in code view
* mention file incompleteness in tooltips
* removed derived Indexer classes and set ParserType via template parameter instead
* moved getSourceFileFromCDB from IndexerCxxCdb to IndexerCommandCxxCdb

bug id = 358
2017-04-15 01:02:09 +02:00
Eberhard Graether 2b38e0f45e src: Fixed C++ source extensions and standard saved to compilation database source group
bug id = 366
2017-04-14 12:57:32 +02:00
Eberhard Graether 8faad97178 build: Changelog for release 0.11.86 2017-04-12 12:29:10 +02:00
Eberhard Graether 8765cffac0 web: Name switch blog post 2017-04-12 12:21:27 +02:00
malte_langkabel 6e342fa87c logic: terminating all running tasks before closing the application (issue #343) 2017-04-12 10:46:56 +02:00
Eberhard Graether 0e4b606c7c src: Fixed FileRegisterStateData synchronisation 2017-04-12 00:38:48 +02:00
malte_langkabel b9d1f5367c logic: skip saving duplicate data
* check for duplicates in intermediate storage
* added unique constraints to sqlite tables
2017-04-11 18:56:15 +02:00
Andreas Stallinger 2a6af01ee8 ui: enter license window resized 2017-04-11 14:16:57 +02:00
malte_langkabel c78fe0d8d4 logic: Use all available cores when setting indexer threads to 0 (issue #342) 2017-04-11 13:42:20 +02:00
malte_langkabel 498933d0aa logic: fix windows uninstall if both 32 and 64 bit are installed
* using different GUIDs for 32 and 64 bit components
2017-04-11 13:37:03 +02:00
Eberhard Graether 06917304bb src: Disabled bookmarking for upcoming release 2017-04-11 10:14:46 +02:00
Eberhard Graether 862d140695 web: Switched documentation to Google Analytics 2017-04-11 10:03:16 +02:00
Eberhard Graether c6a0f0b000 ui: fixes for release
* fixed NameHierarchy delimiter not set when project settings need to be migrated
* fixed codeview does not scroll to linenumber in single file mode when activating symbol in changed file
2017-04-11 09:42:46 +02:00
malte_langkabel 23341d63d0 ui: reset window layout option in view menu 2017-04-10 18:45:32 +02:00
malte_langkabel 050e31c1fd logic: fix copying old settings from coati 64 bit to sourcetrail on windows 2017-04-10 17:45:27 +02:00
malte_langkabel 7421ef85d1 data: update windows installer images to sourcetrail 2017-04-10 17:36:46 +02:00
Andreas Stallinger 17c0189a83 build: get rid of some compiler warnings
<description>
2017-04-10 15:51:26 +02:00
malte_langkabel 85f4262787 logic: fix maven detection was slow when no maven installed on windows system 2017-04-10 15:41:39 +02:00
malte_langkabel 635bf70076 logic: ping related updates
* ping is now sent on window focus
* remove ping result from status view
2017-04-10 12:09:58 +02:00
malte_langkabel d4d3decfb9 logic: fix log file did not have a name 2017-04-10 11:02:12 +02:00
Eberhard Graether 6ba93ca39f src: more bug fixes
* fixed snippets added twice on token reactivation for errors and fulltext search results
* fixed colorscheme gets refreshed when cancelling preferences
* scroll to first line in errors table after indexing and showing view
* fixed file not properly expanded when snippet covers full file
* fixed project type naming in project setup
* fixed set delimiter of NameHierarchy for projects that can't be loaded yet
* changed language order for project setup
2017-04-07 17:14:34 +02:00
Andreas Stallinger 5570458e53 build: use coati docker images
there is no sourcetrail docker image
2017-04-07 13:28:01 +02:00
Andreas Stallinger 045a259b2e build: renaming to sourcetrail 2017-04-07 13:19:09 +02:00
Eberhard Graether 8391a6da57 src: Bug fixes
* fixed - to _ in color schemes
* fixed yoda talk in Tutorial
* fixed graph node with no children but qualifier has expand toggle
* added placeholder and file filter for maven detection on MacOS
* fixed NameHierarchy delimiter wrong in SearchIndex
2017-04-06 16:53:17 +02:00
Andreas Stallinger 30dda62970 ui: Maven Preferences on linux
* maven filter and placeholder for linux in preferences
2017-04-03 11:36:06 +02:00
malte_langkabel 63a1fe9b80 logic: treat VS project as CDB source group after creation 2017-04-03 10:39:55 +02:00
malte_langkabel 9947e83846 logic: allow usage of blank spaces in maven path 2017-04-03 10:10:16 +02:00
malte_langkabel da063377cd build: fix cyclic file dependencies that break the build on Linux 2017-04-03 09:53:04 +02:00
malte_langkabel 0f94104005 build: enable fast linking for windows debug builds 2017-04-03 08:55:53 +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
wrongway88 25f3c4666a src: Logger Utility
Added logger utility and outsourced file name creation for file loggers to it
2017-03-29 22:56:37 +02:00
wrongway88 abf7c723a2 src: hotfix
Added missing stl functional include
2017-03-28 22:32:33 +02:00
Eberhard Graether 4e9ba897ac src: Refactored TokenLocation classes to SourceLocation classes
* Removed TokenLocationLine
* decoupled TokenLocationFile from TokenLocationCollection
* save vector of Token ids to SourceLocation
* refactored SourceLocationFile::getFilteredByLines()
* refactored snippet creation
2017-03-25 02:05:48 +01:00
malte_langkabel 4c64822504 web: add blog post "How to Integrate Maven into Your Own Java Tool" 2017-03-23 15:06:19 +01:00
Andreas Stallinger d33e137451 fix: contextmenu getInstance added 2017-03-23 12:53:06 +01:00
Andreas Stallinger 591b66fe77 build: linux symlink
linux symlink moved from setup script to cmake
2017-03-22 18:54:29 +01:00
Andreas Stallinger 9846bbc014 ui: Enable/Disable undo/redo contextmenu 2017-03-22 17:49:47 +01:00
malte_langkabel b72d6a2e3b data: reference gui data for bookmarks in wix installer 2017-03-22 09:52:37 +01:00
Eberhard Graether faf0ab3ac7 ui: Updated style of QtBookmarkBrowser 2017-03-21 17:05:23 +01:00
Eberhard Graether 8ffc2f281c ui: Fixed layout of QtBookmarkBrowser
* fixed window size and resizing
* fixed layout and spacing
* removed focus rects on Mac
* fixed filter dropdown style for Mac
* reuse button handling from QtWindow
* use different colors for category and bookmark rows
* allow clicking full row for expansion
* show edit and delete button only on hover
* ellide bookmark name when little space
2017-03-20 15:01:18 +01:00
malte_langkabel a96bba67cb data: added missing component for Maven icon to WIX setup 2017-03-20 14:18:22 +01:00
Eberhard Graether 42038337c0 Revert "src: Disabled bookmarking for upcoming beta release"
This reverts commit 9807bf856a.
2017-03-20 12:42:14 +01:00
malte_langkabel cdf5a81af9 ui: fixed animated scroll in single file code view 2017-03-20 11:11:03 +01:00
malte_langkabel 4f77f073f0 logic: update java indexer
* update to use JavaSymbolSolver 0.5.2.x (fce40b67)
* update to use JavaParse 3.1.2 (4537e57a)
* implemented solving constructor calls instead of just recording a type usage here
2017-03-19 16:11:55 +01:00
Eberhard Graether 9807bf856a src: Disabled bookmarking for upcoming beta release 2017-03-17 14:30:52 +01:00
Eberhard Graether ffafc55273 ui: Fixed layout of QtBookmarkCreator
* fixed window size and resizing
* fixed layout and spacing
* removed focus rects on Mac
* fixed category dropdown style for Mac
* reuse button handling from QtWindow
* updated QtBookmarkBar buttons to new icon creation
2017-03-17 13:36:34 +01:00
malte_langkabel 5fea315cc9 ui: Add status dialog for Maven project setup 2017-03-17 13:18:48 +01:00
Eberhard Graether 139c49805d src: cleaned up StorageAccess 2017-03-17 00:47:01 +01:00
Eberhard Graether 630009a2ba logic: Refactored undo redo stack
* Store MessageActivateTokens instead of original view messages
* Renamed FeatureController to ActivationController
* Remove all non-activation messages from undo redo stack after reindexing project
* Added MessageShowReference to undo redo stack
* Added MessageScrollGraph for restoring graph view scroll position
* Fixed MessageGraphNodeMove not saved for bundles
* Refactored tokenIds and nodeNames in SearchMatch and MessageActivateTokens
* Refactored SearchController
* Fixed file expansion on undoing/redoing after switching code view mode
* Fixed redundant graph animation due to present qualifier nodes
* Fixed no restoring of graph node expansion when showing overview in between
2017-03-16 23:24:33 +01:00
Eberhard Graether aa49fffca6 src: fixed clang warnings 2017-03-15 12:58:06 +01:00
Andreas Stallinger c8404aa83d fix: no dialogs in headless mode 2017-03-14 18:22:46 +01:00
malte_langkabel a8edf47685 ui: added Maven project icon 2017-03-13 14:54:39 +01:00
Andreas Stallinger 2d2a439b30 utilty: sourcetrail license generator
* generate sourcetrail licenses
* get version from loaded license
2017-03-13 10:29:45 +01:00
malte_langkabel 8533ad7535 logic: minor maven fixes
* changed maven related value name in project settings
* fixed JavaProjectSettings to return correct ProjectType for Maven project
2017-03-09 11:57:22 +01: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
Andreas Stallinger d6f3099981 build: Linux desktop file
validation of desktop file on some linux distros went wrong without the
semicolon
2017-03-07 16:42:22 +01:00
malte_langkabel 235a224f12 logic: implemented skipping implicit code in CxxForRangeStatements 2017-03-06 16:41:10 +01:00
malte_langkabel bcc71d630f build: hide console when running release builds on windows 2017-03-06 12:59:58 +01:00
malte_langkabel 476e731b9e build: building windows releases with .pdb files now to debug customer crashes with .dmp files 2017-03-03 19:49:39 +01:00
Andreas Stallinger 928ff49b74 build: dependencies added to testgen
* prebuild should now update correct, if new tests or test are deleted
2017-03-03 16:16:41 +01:00
Andreas Stallinger f5dfafe091 logic: license seats, startscreen
* license info on startscreen
* volume license
* license generator update
2017-03-03 13:49:05 +01:00
Eberhard Graether a1d8100215 web: blog post for Release 0.11 2017-03-01 13:09:49 +01:00
Eberhard Graether 6a0cf7dbb4 web: updated documentation to Release 0.11 2017-03-01 11:28:29 +01:00
malte_langkabel 67f97071e0 ui: fixed naming of 64 bit windows path detector
* also removed LibLincense dependencies on Lib because they are linked the other way round
2017-02-27 11:21:52 +01:00
Andreas Stallinger eac48596ad logic: Licenses with seats 2017-02-27 09:53:39 +01:00
Eberhard Graether 0423a86a63 script: Added RTTI flag to clang build command in README 2017-02-24 15:35:23 +01:00
Eberhard Graether a80d8761d8 blog: Coati birthday post 2017-02-24 15:28:27 +01:00
wrongway88 e6f7e61a5f logic: vs plugin cdb writing
cdb data will now be written to file immediatly instead of stored and then written all at once
this might solve memory issues for very large projects, but also increases parsing time (added concurency)
2017-02-23 00:01:18 +01:00
malte_langkabel 4563cbe90a logic: indexer commands
* replaced parser arguments by project specific IndexerCommands that know everything the indexer needs to know to do its job
* added different language and project specific indexers that know how to handle a certain kind of indexer command
* refactored FileManager and FileRegister to have less overhead
* removed no-rtti restriction for clang files in lib cxx
* uncommented deprecated interprocess code.

fortune cookie message = Happiness will bring you good luck.
2017-02-22 16:42:20 +01:00
malte_langkabel 650cd8101e data: removed QT dlls from repo
removeing qt dlls from repo since they need so much space. fetching them from qt install dir in setup script now.
2017-02-22 12:12:46 +01:00
Eberhard Graether a0d3bd272c ui: Fixed scrolling to active symbol when clicking on active graph view node 2017-02-22 04:58:54 +01:00
Eberhard Graether 224f0b05f9 ui: fixed method names disappearing in code view after being deselected 2017-02-22 04:30:48 +01:00
Eberhard Graether 79fc78a518 ui: Fixed shortcuts dialog
* fixed table sizes
* fixed scrolling for MacOS
* fixed couldn't resize dialog
2017-02-22 03:17:35 +01:00
wrongway88 c895179ace ui: vs plugin dialog
Improved dialog for finished cdbs
2017-02-21 21:29:03 +01:00
Andreas Stallinger f257a207f4 script: publish script, switch back to branch
switch back to branch if rebase does not work
2017-02-21 18:01:23 +01:00
Andreas Stallinger 0e5cc4bf7a build: fix build on Unix systems
* throw std::exception replaced with throw error
* MANAGER to Manager in CMakelists
2017-02-21 17:46:09 +01:00
wrongway88 1fbc16e098 logic: interprocess utility
Added basic interprocess utility
2017-02-21 17:12:35 +01:00
Andreas Stallinger 9673685165 build: manual jobs added to ci 2017-02-21 14:06:51 +01:00
Eberhard Graether 77ef076c88 ui: Show definition in code view when clicking active node in graph 2017-02-21 00:37:19 +01:00
Eberhard Graether 4a230b1d94 logic: Fixed full text search messages not stacked consecutively 2017-02-21 00:17:32 +01:00
Eberhard Graether 02850baf9c logic: Fixed error activation from code caused another show error message 2017-02-21 00:14:02 +01:00
Eberhard Graether d02e3e74d0 ui: Fixed moving bundle nodes was not stored in undo stack 2017-02-21 00:10:49 +01:00
Eberhard Graether 04a5abdf98 data: Fixed file id retrieval for file in search match 2017-02-20 11:24:01 +01:00
Eberhard Graether 5dc901ea13 build: Added changelog for release 0.11.0 2017-02-19 20:57:05 +01:00
Eberhard Graether 558f0451af Revert "src: Disabled bookmarking for upcoming release"
This reverts commit 356c753f13.
2017-02-19 20:48:17 +01:00
wrongway88 ed9ff6d1bc ui: plugin ping
added update pings on token activation (just to have a somewhat regularly reoccuring event to trigger the ping)
2017-02-16 20:30:22 +01:00
wrongway88 50df7cace2 logic: vs plugin fix
fixed issue with include path retreival
2017-02-16 16:39:21 +01:00
wrongway88 18153a2ac5 logic: VS Plugin logging/exception handling
Added some additional logging and exception handling to solution parser
2017-02-16 00:32:39 +01:00
Andreas Stallinger 217e9ceff2 build: linux package names
* linux packages names to 64bit/32bit instead of x86_64/i686
2017-02-15 12:51:28 +01:00
Andreas Stallinger c028d28ffd build: ci tag push 2017-02-15 12:10:46 +01:00
malte_langkabel 1c1e792fcf logic: anonymous namespace locations
* removed special treatment of anonymous symbols when retrieving their source location. Now their source location is just the "{" character at the start of the namespace's scope.
2017-02-15 11:36:04 +01:00
Eberhard Graether 1fca7d2f29 ui: Fixed namespace shown as separate node in graph when 'using namespace' edge is visible 2017-02-15 11:03:50 +01:00
malte_langkabel 21fb8476ae logic: fixed context node name of reference when context is a file 2017-02-15 10:45:29 +01:00
Eberhard Graether 8fca305fdd ui: Don't accept rich text in enter license field
bug id = 207
2017-02-15 00:08:28 +01:00
Eberhard Graether fcac720ea9 src: Fixes for release
* reduced contrast for overview bundle starting character titles
* put 3rd party licenses into Mac bundle
* check edges for 'importing files' bundle as well in case node types are not set
2017-02-14 23:44:27 +01:00
malte_langkabel 3359f25427 data: updated EULA
* updated EULA to reflect Test Licenses and made some minor changes
* moved 3rd party licenses to app data folder
* fixed crashes in headless mode
2017-02-14 15:53:36 +01:00
Eberhard Graether 591f723b82 ui: Fixed icons in setup dialogs blurry on high DPI screens 2017-02-14 13:39:01 +01:00
Eberhard Graether 78f8fdc552 build: Updated 3rd party licenses 2017-02-14 11:53:07 +01:00
Andreas Stallinger 97a021c97b build: Linux package readme
* added readme to linux packages
2017-02-14 11:29:01 +01:00
Eberhard Graether f63f4b360a ui: Added link to additional preindexed projects to trial 2017-02-14 11:26:47 +01:00
malte_langkabel 32bb8347cd logic: fixed interrupting cxx ast visiting 2017-02-14 11:10:14 +01:00
Eberhard Graether d0b49a68a3 ui: Show trial in window title 2017-02-14 11:02:19 +01:00
Eberhard Graether bd17bd3573 ui: Count by connected sub node for non-indexed bundles 2017-02-14 10:45:56 +01:00
malte_langkabel 1520b8bfbf logic: implemented skipping to record calls to the constructor of a generated lambda class. 2017-02-14 10:35:11 +01:00
Eberhard Graether a6bc9c5465 ui: Bigger offset for bigger circle in graph node bundle 2017-02-13 23:02:53 +01:00
Eberhard Graether be82e2a24e src: Fixed issues with relative paths 2017-02-13 22:45:59 +01:00
Eberhard Graether 1d133492ed data: Fixed file node finding in search and undoing file activations in graph 2017-02-13 22:31:42 +01:00
Eberhard Graether 356c753f13 src: Disabled bookmarking for upcoming release 2017-02-13 21:21:50 +01:00
Eberhard Graether d527991b46 src: Reviewed old files touched by bookmarks commit
* Removed some unused changes
* Disabled "No IDE connected" message in status bar
* Use threaded functor in status bar view
2017-02-13 20:55:37 +01:00
Eberhard Graether 637da119aa logic: Cleaned up LogManager and setupLogging call 2017-02-13 20:25:24 +01:00
Eberhard Graether 259b112080 logic: Fixed code view single not cleared properly in some cases 2017-02-13 13:20:20 +01:00
malte_langkabel 8a93bebff8 logic: fixed a crash when saving the app settings 2017-02-13 13:14:56 +01:00
Eberhard Graether 2ade5ca976 logic: Fixed every project trying to load from cdb, added warning for trial mode on failed refresh 2017-02-13 12:40:45 +01:00
malte_langkabel d5e2bbb17c logic: recording node type of a cxx namespace in a using directive
* also fixed tests to be executed in the same order on every platform
2017-02-13 10:29:27 +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
Eberhard Graether 17d9c87a5d build: Fixed clang errors and warnings, incremented storage version 2017-02-13 00:32:52 +01:00
wrongway88 97fd40fe9b ui: bookmarks
can now bookmark tokens
2017-02-12 15:06:07 +01:00
wrongway88 e1d2c3a4e0 logic: minor vs plugin fix
fixed some minor plugin issues
2017-02-11 19:08:59 +01:00
Eberhard Graether 0eb959bf54 logic: Allow project opening in trial mode
* added open project button to start screen in trial mode
* allow ide communication in trial
2017-02-11 17:22:14 +01:00
Eberhard Graether ba984121a2 ui: Fixed jumping to character in overview bundle broken when _ present 2017-02-11 16:36:40 +01:00
Eberhard Graether 06c2976959 data: Only record name specifiers within project files
* Use const references in Traverse methods of CxxAstVisitorComponent
* Only record symbol kinds of name specifiers within project files
* Moved main file check in within unindexed project file check
2017-02-11 15:42:29 +01:00
malte_langkabel 10e9a4a70d logic: recording symbol kinds cxx name specifiers (e.g. "std" in "std::string") 2017-02-10 17:09:02 +01:00
Eberhard Graether b13dbf2f2d ui: Fixed issues with error UI
* load error icon only once and reuse
* fixed error not activated when selecting from list

bug id = 287
2017-02-10 16:21:21 +01:00
Eberhard Graether 3a540285a3 logic: Show non-indexed nodes within their parents and their childs
* Added support for access nodes without title
2017-02-10 14:49:26 +01:00
Eberhard Graether e2a6d4e237 logic: Check whether nodes were not already added as symbols in namespace graph retrieval 2017-02-10 01:39:18 +01:00
Eberhard Graether 9a67835882 data: Updated color schemes to new node type names 2017-02-10 01:07:11 +01:00
Eberhard Graether ab7fdac2f8 logic: Fixed non-indexed symbols were not shown as namespace contents 2017-02-10 00:54:04 +01:00
Eberhard Graether bfb997d35f logic: Fixed SearchMatch sorting not updated after rescoring
* also ignore template section in SearchMatch sorting
2017-02-09 23:54:21 +01:00
Eberhard Graether b423b41836 ui: Fixed scrolling in code view list mode broken for Mac touchpad 2017-02-09 19:22:52 +01:00
Eberhard Graether 3b89bad424 ui: Disabled syntax highlighting for project description
* Also made syntax highlighting dependent on file ending of source file
2017-02-09 16:05:20 +01:00
Eberhard Graether e08f7ce2c0 ui: Fixed different font faces cause graph nodes to expand to more grid cells 2017-02-09 15:26:14 +01:00
Eberhard Graether 06676eda66 logic: Fixed comparing of project files to ignore carriage return characters 2017-02-09 13:37:40 +01:00
Eberhard Graether 83a6817d57 build: Fixed MacOS bundle for new build setup
* Removed libLTO
* Removed boost libraries
* Fixed wrong READMEs in plugin directories

bug id = 315
2017-02-08 16:10:16 +01:00
Andreas Stallinger bb4cc9662c build: ci fix
* test paths changed
* moving javatest to the back caused sometimes error if run before other test
2017-02-07 13:06:47 +01:00
malte_langkabel d988af2ea9 logic: adding vs compatibility flags to new project when Coati is using global includes of Visual Studio
* also added distinct path detectors for 32 and 64 bit Visual Studio
2017-02-07 12:44:08 +01:00
Andreas Stallinger a2e88b9048 build: changed CI test paths 2017-02-07 12:34:30 +01:00
malte_langkabel 1bb25140a7 ui: renamed undefined to non-indexed and made node/edge names more readable 2017-02-06 16:18:00 +01:00
malte_langkabel be1a44a763 ui: file clearing progress
* display some progress information when clearing files
2017-02-06 13:02:15 +01:00
Eberhard Graether 9177073ac3 ui: Added Java specific keywords to syntax highlighting and distinguish by project language 2017-02-06 11:22:57 +01:00
Eberhard Graether 9ebb46f1b5 script: updated build.sh script and git_pre_commit hook to new build directory 2017-02-06 10:57:51 +01:00
malte_langkabel 7f2db69995 build: offer windows 64 bit build (issue #300)
* update to clang/llvm to 3.9
* update to qt 5.8
* fixed windows javapathdetector for 64 bit java.
* added LibGui as dependency to tests
* fixed legacy Java 6 install necessary on MacOS
* fixed setting of user path for 64 bit build
* added missing pngs to windows installer
* renamed graph zoom button images
* reverted moving of setupLogging call to fix crash on deployed exe

fortune cookie message = An old acquaintance will enter your life.
2017-02-03 14:31:43 +01:00
Manuel Dobusch 8c0f9f2de4 logic: vs plugin multithreading
added simple multithreading for cdb creation
2017-02-02 17:03:52 +01:00
Eberhard Graether 52b0cd2017 ui: redesigned graph overview and use new list layouting within overview bundles
* overview bundles imitate style of bundled node type
* removed bundle for built-in types
* show contents of overview bundle in vertical list layouted with new ListLayouter
* nodes starting with the same letter are grouped with the letter displayed above
* pressing the letter key will scroll to the group
* also use this list layouting for namespace & package contents
* renamed BucketGrid to BucketLayouter
* moved used functions of GraphPostProcessor to GraphViewStyle and removed GraphPostProcessor

fortune cookie message = Don't be afraid to take that big step
2017-02-02 13:29:40 +01:00
Eberhard Graether 993d66727d ui: Set move and select cursors for drag interactions in code view 2017-02-02 00:47:30 +01:00
Eberhard Graether 81ee6eca60 src: Fixed macro syntax in QtKeyboardShortcuts 2017-02-02 00:45:33 +01:00
Manuel Dobusch 37f0d645fd ui: 3rd party licences
Updated menu entry title to '3rd party licences'
2017-02-01 21:42:54 +01:00
Manuel Dobusch 25f8b6d385 ui: shortcut list
udpated style of shortcut list
2017-02-01 21:29:15 +01:00
Manuel Dobusch 02fad4990b logic: plugin fix
Can now handle projects with non-native build tool
2017-01-31 13:23:43 +01:00
Eberhard Graether 00cba732df ui: Added style for graph zoom buttons
* moved zoom buttons to QtGraphicsView due to stylesheet and repositioning on resize
2017-01-30 16:28:32 +01:00
Manuel Dobusch 85be119e7f ui: shortcut cheat sheet
Added a simple in-app shortcut list to the help section
2017-01-27 19:11:14 +01:00
malte_langkabel a78cb1d020 logic: fixed names of file nodes that are target of macro use edge
* fixed name of macro use edge target
* fixed generating a file nodes full path in SqliteStorage
2017-01-27 15:43:35 +01:00
Eberhard Graether f88fd92962 ui: bundle built-in types in graph view 2017-01-27 14:21:28 +01:00
Eberhard Graether b659b2ac34 ui: Show error in errors table when clicked in code view
bug id = 323
2017-01-27 14:04:55 +01:00
Eberhard Graether 7ee9624217 ui: Switched default mouse drag in code view to code selection, panning when Shift is pressed 2017-01-27 11:23:49 +01:00
Eberhard Graether 590f4138e1 data: Fix file node search with concatenated file path in storage fails for relative paths containing .. 2017-01-27 10:30:26 +01:00
Eberhard Graether a9153a8416 logic: Fixed headless Coati gets stuck in trial mode 2017-01-27 10:27:05 +01:00
Eberhard Graether 32550dcb77 ui: Fixed scrolling broken in graph view 2017-01-27 10:12:12 +01:00
Eberhard Graether 2aa8c4c22c ui: Refactored context menu API, added file path actions in graph and code
* Add 'copy full path' and 'show containing folder' actions to graph view, code view
* Added file path to file node tooltip

bug id = 320
2017-01-26 21:54:57 +01:00
Manuel Dobusch 4fc0785002 ui: company address updated
updated company address in 'about' window
2017-01-26 19:09:59 +01:00
Manuel Dobusch cdde712a2c ui: graph zoom buttons
Added simple zoom buttons to graph
2017-01-26 16:33:49 +01:00
Eberhard Graether 9583b6bbea ui: Split aggregation edges when expanding nodes if possible 2017-01-26 16:29:11 +01:00
Eberhard Graether 5e2c0f2c1f logic: Fixed trial to not refresh changed projects
It was not checked whether Coati is unlocked when refreshing an edited project. So users could change one of the sample
projects manually to index their own source code.
2017-01-26 13:18:13 +01:00
Eberhard Graether 91ae2da227 data: Uncommented lines in TicTacToe sample that use std library code 2017-01-26 12:35:06 +01:00
malte_langkabel c73599d64e logic: avoided triggering clang assertion when indexing lambda with return type that is specified but has neither declaration nor definition. (issue #318) 2017-01-23 16:51:31 +01:00
malte_langkabel 314f07c7b4 build: fixed filename in CMakeLists 2017-01-23 16:02:58 +01:00
malte_langkabel 2759018374 ui: show when type is built-in (issue #2)
* renamed DefinitionType to DefinitionKind
* passing DefinitionKind from Java to C++ instead of just a single bool
* omitting to create a symbol for undefined types

fortune cookie message = Happy news is on the way to you.
2017-01-23 15:55:29 +01:00
malte_langkabel 6ea248b500 logic: clearing unused includes
* refresh also clears referenced (included or imported) files if they are not part of the project's source files and are not referenced by any other unchanged file anymore.
2017-01-23 10:36:42 +01:00
malte_langkabel 0e5f65b475 logic: fixed bug that caused Java packages that only contain sub-packages to be recorded as undefined 2017-01-20 23:26:19 +01:00
malte_langkabel 184a1a0319 logic: fixed refreshing bug
* fixed bug where coati didn't recognize file dependencies because each file actually had two different nodes.
2017-01-19 13:44:14 +01:00
malte_langkabel 212c0e71fa ui: added context menu option to copy a graph-node's name 2017-01-19 12:01:08 +01:00
malte_langkabel 0cdddb616d ui: added options for context menu when clicking file name in code view
* copy full path
* open containing folder
2017-01-19 10:51:47 +01:00
malte_langkabel 8e4179cbf0 logic: reduced overhead in storage data types
* node represents something that is not yet defines
* nodes that are defined are either files or symbols

fortune cookie message = trust your intuition
2017-01-18 14:46:44 +01:00
Manuel Dobusch 79d5f48454 logic: licence error handling
Fixed bug #277 and improved error handling in licence code
2017-01-17 16:46:24 +01:00
Eberhard Graether 39a587aa83 ui: Fixed active reference not shown when switching between code view modes 2017-01-17 16:34:56 +01:00
Eberhard Graether 79ad952d13 ui: Styled code navigation
* Defined final icons and colors for code navigation buttons
* Added disabled color for all buttons in search and code navigation UI
2017-01-17 15:17:17 +01:00
Eberhard Graether db5a4618fe ui: Made edge lines thicker 2017-01-17 12:09:25 +01:00
malte_langkabel e7d2ddbd2d logic: handling of multiple files with the same name
* implemented storing symbols and files in completely different tables
2017-01-17 11:27:20 +01:00
malte_langkabel ecbc703261 logic: fixed environment variable detection
* fixed detection of environment variables in path that are encapsulated in %VARIABLE_NAME%
* mentioned notation for environment variables in documentation
2017-01-11 14:54:06 +01:00
malte_langkabel a8ca0660fa ui: Coati states if it requires 32 or 64 bit Java
* also updated documentation
2017-01-11 11:58:33 +01:00
malte_langkabel 0b3defbd1d logic: fixed windows crash in single file view 2017-01-10 15:59:20 +01:00
malte_langkabel 86def95c31 logic: updated Java indexer
this fixes a lot of unsolved-symbol issues.
2017-01-10 14:04:26 +01:00
Eberhard Graether d2ad2da1f1 ui: Fixed graph layouter couldn't handle nodes with same name 2017-01-09 22:05:03 +01:00
Eberhard Graether 79456d4121 ui: Don't allow vertical aggregation edges when either node is a child 2017-01-09 21:47:38 +01:00
Eberhard Graether 95dd6dadfc ui: Don't show stats snippet in code view when no project was loaded 2017-01-09 21:38:12 +01:00
Eberhard Graether cee8a52ca4 ui: Added checkbox to enable/disable animations to preferences 2017-01-09 21:32:59 +01:00
Eberhard Graether 757f728f98 ui: Removed double line around graph view 2017-01-09 21:15:14 +01:00
Eberhard Graether 2c7f19bfd1 ui: Fixed namespace label cut off when node is in front column 2017-01-09 16:59:16 +01:00
Eberhard Graether 2bdc9b19a2 ui: Added single file mode to code view
* Added navigation to top of code view for iterating references and switching between list and single file mode
* current file name and reference count is shown on top in single file mode
* refactored scrolling to location or line via request system
* added parameters animated and toTop to scrolling system
* refactored class hierarchy and removed unused stuff in list mode
2017-01-09 00:48:20 +01:00
malte_langkabel 79937b21f0 logic: refactored using Occurrences in PersistentStorage 2016-12-19 14:20:54 +01:00
malte_langkabel d9e6b23a8b ui: removed underscores from edge-hover names in graph 2016-12-16 11:02:33 +01:00
malte_langkabel 946052f5ae src: renamed template specialization edge types 2016-12-16 10:35:46 +01:00
malte_langkabel 4194381d5f logic: guessing type of callee node to be function. 2016-12-15 16:20:39 +01:00
Eberhard Graether 157e78a84b web: updated blog navigation, fixed jquery conflict 2016-12-14 15:41:55 +01:00
Eberhard Graether be7addb626 web: blog post for release 0.10 2016-12-14 15:40:02 +01:00
Eberhard Graether 59dad33d19 build: Added changelog for release 0.10.0 2016-12-14 15:27:32 +01:00
malte_langkabel c1648f59bd build: implemented auto-generation of GUID for windows installer 2016-12-14 15:21:00 +01:00
malte_langkabel 5482e56e82 build: deploy changes
* moved sample projects from data to user folder
* added fallback files for app and window settings
* implemented copying app and window settings to user folder when not found on app startup
* fixed upgrading for windows installer
2016-12-14 13:33:17 +01:00
Manuel Dobusch 68a2cb08bc build: windows installer update
removed appsettings from installer
2016-12-13 16:51:44 +01:00
Andreas Stallinger c00ebb6729 script: Coati.sh script LD path fix 2016-12-13 12:41:10 +01:00
malte_langkabel 0bf1145a77 data: renamed log window in window settings for package
* also: added spaces in tutorial project
2016-12-13 12:29:42 +01:00
Eberhard Graether 7201a4143d doc: Fixed images in documentation 2016-12-13 12:25:12 +01:00
malte_langkabel f2d8fb7b6d build: fixed duplicate GUIDs in installer
<description>
2016-12-13 11:28:34 +01:00
Eberhard Graether f232093c3d ui: Fixed some spacing in status view 2016-12-13 11:22:06 +01:00
malte_langkabel 982264d7ba logic: indexer fixes
* forward declarations are recorded as undefined types now
* fixed minor issue with dependent template argument names
2016-12-13 10:45:16 +01:00
Eberhard Graether 5391ea449b ui: Renamed Log Window to Status Window and Output Tab to Status Tab 2016-12-13 10:35:50 +01:00
Eberhard Graether 48ece50eca src: Added more status messages and some fixes
* Elide status bar messages to avoid window resize window
* Fixed status view clearing when switching projects
* Refactored app setting loading
* Replace newline characters with spaces in status view
2016-12-13 01:41:06 +01:00
Manuel Dobusch 790afcf572 build: wix setup
fixed some dll related stuff
2016-12-12 19:26:44 +01:00
Manuel Dobusch 2d8009535f build: windows dlls
Added a bunch of dlls that should resolve the need to install certain windows updates
2016-12-12 16:46:22 +01:00
malte_langkabel 7cf8cbb59d build: updated windows installer to include all the new icons 2016-12-12 11:40:51 +01:00
Eberhard Graether 5845a98095 logic: polished status view
* click message in status bar to show status view
* renamed status tab to output
* renamed status column to message
* fixed list not properly updating when using filters
* scroll to first row after clearing
2016-12-12 11:08:07 +01:00
Andreas Stallinger 9db99580d1 src: removed cout in statuscontroller 2016-12-12 10:07:37 +01:00
Eberhard Graether 05ad054421 logic: Refactored graph node sorting
* Fixed sorting to always be alphabetical within each bucket
* Bundled nodes will expand in place
* Overview bundles are not sorted alphabetical
* Probably improved sorting performance by using std::set
2016-12-10 12:40:46 +01:00
Eberhard Graether 8bf02140b2 logic: Aggregate type use edges to make referencing symbols appear collapsed 2016-12-09 20:43:46 +01:00
malte_langkabel 26902acbbb src: split CxxAstVisitor into component based indexing system
* also: added logging for sqlite exceptions
2016-12-09 17:00:26 +01:00
Eberhard Graether 809d27ecac ui: Fixed undefined stripes of graph nodes covering child nodes 2016-12-09 14:21:43 +01:00
Andreas Stallinger 6d56202469 fix: fixed gitlab ci yaml file 2016-12-09 12:09:13 +01:00
Andreas Stallinger ebddfaaa32 build: 32 bit linux ci
* in vector testsuite replaced EQUAL with DELTA for float comparison
* on linux use appsettings for testing
* botan deprecated warning
* template error in cxxtest
2016-12-09 12:03:05 +01:00
Eberhard Graether 6575485609 logic: Improved code view performance by removing duplicate TokenLocation check 2016-12-07 21:04:19 +01:00
Eberhard Graether a3428be65c logic: Improved code view performance by removing duplicate storage call 2016-12-07 18:47:07 +01:00
Eberhard Graether 42dad5f83a logic: Improved performance of source location retrieval for files 2016-12-07 15:33:07 +01:00
Eberhard Graether 2d9052992c logic: Scroll active definition to top of code view is possible
* don't log hande message
* fixed graph gets animated when using next and previous code reference shortcuts
* fixed message scroll code handling
2016-12-07 14:18:24 +01:00
Andreas Stallinger 5d5a0922f5 ui: statusview
* statusview as tab
2016-12-07 12:56:56 +01:00
Eberhard Graether 3a269ad7b3 ui: Fixed graph switch animation being used for edge activation 2016-12-07 12:39:43 +01:00
Eberhard Graether 41fe24ed7a logic: Fixed crash in bundling 2016-12-07 10:05:43 +01:00
Eberhard Graether 0c909fd2bd logic: Fixed issues in tutorial
* increased gap in code_tutorial_3.h so that next comment is not already visible
* Fixed SearchMatch sorting to not loose matches with same name but different namespace
2016-12-06 14:27:54 +01:00
Eberhard Graether 272ebcd279 ui: improve bundling of file nodes
* Don't bundle referencing and referenced symbols when file or macro is active
* Bundle importing files when activating java symbols
2016-12-02 11:26:16 +01:00
Eberhard Graether 32c2906bf0 logic: Improved performance of depending file path retrieval for refresh 2016-12-02 11:01:48 +01:00
Eberhard Graether 163f3238ce logic: Prevent verbose indexer logging when logging is disabled 2016-12-01 16:13:25 +01:00
Eberhard Graether 3ab86c2e4f logic: Fixed search autocompletion scoring to not give last letter bonus 2016-12-01 14:43:44 +01:00
Eberhard Graether 6e0eb89cd0 ui: Fixed issues in search field
* Fixed crashes when pressing return and only ? or ?? was entered
* Fixed "Find Symbol" after "Find Text" will remove the ?
* Do fulltext search when no match was found for the entered text
* Select current matches when using "Find Symbol"

bug id = 251
2016-12-01 11:21:32 +01:00
Andreas Stallinger 6a23e483c8 build: more libs for linux 2016-11-30 22:11:45 +00:00
Eberhard Graether 457833fb2a logic: Added full refresh checkbox to indexing start dialog
* Checkbox allows for switching between refresh and full refresh
* Renamed menu option Force Refresh to Full Refresh
* Checkbox is not visible when project needs to be fully refreshed
2016-11-30 16:32:34 +01:00
Eberhard Graether 699a8a2711 build: Added botan build instruction for Mac to README 2016-11-30 13:10:25 +01:00
malte_langkabel 57284b1d80 logic: added clang flag to continue indexing, no matter how many errors have been thrown
* added clang flag to continue indexing, no matter how many errors have been thrown.
* changed parser to insert custom compile flags after the default ones set by coati so that the user can override these.
2016-11-30 12:15:45 +01:00
Andreas Stallinger 94ddd0d4f9 build: linux libs
* libEGL
* stdc++
* ...
2016-11-30 12:01:46 +01:00
Eberhard Graether 4d7a0d2653 ui: Clear errors in code view when sending MessageClearErrorCount 2016-11-30 11:33:07 +01:00
malte_langkabel 328cf7e8cc logic: indexer and name resolving fixes
* made header and excluded filepaths of filemanager canonical
* implemented solving Attributed- and InjectedClassNameType
* handled clang returning null objects in NameResolvers
2016-11-29 17:26:57 +01:00
Eberhard Graether b2358f581c ui: Fixed graph node icons getting allocated and stacked on hover 2016-11-29 16:48:48 +01:00
Eberhard Graether e5b20275d1 ui: Hide log table from user and put logging settings back into preferences window 2016-11-29 16:24:42 +01:00
Eberhard Graether c7886cfb3a ui: Updated graph node and project type icons 2016-11-29 15:51:47 +01:00
Manuel Dobusch d24e5b5bbd logic: vs plugin upgrade
Updated documentation and removed obsolete plugin ui
2016-11-29 14:06:02 +01:00
Eberhard Graether e1968eaaac logic: Fixed crashes in CxxSpecifierNameResolver and LogController 2016-11-29 12:46:22 +01:00
Eberhard Graether 46078097d7 ui: Fixed graph view to not recenter on active node when clicking edge 2016-11-29 09:59:26 +01:00
Eberhard Graether 949f738b3f logic: Fixes in error management
* Moved error filtering to PersistentStorage
* Fixed wrong error count in statusbar and dialog sometimes
* Make sure error tab is visible when showing Log View
* Don't show error view when no visible errors are added
2016-11-29 08:29:45 +01:00
Eberhard Graether 2aa6116c71 ui: Removed font zoom on CTRL + MouseWheel 2016-11-29 04:17:18 +01:00
Eberhard Graether 74d702095c ui: Fixed file name not shown in search view when activated from graph or code 2016-11-29 04:07:58 +01:00
Eberhard Graether e0a48874ef ui: Removed beta label for Java in project type selection 2016-11-29 03:37:05 +01:00
Andreas Stallinger b59ad79ccf ui: log as first tab
* log as first tab
* unused variable deleted
2016-11-28 18:22:44 +01:00
Andreas Stallinger 659c9ecc66 build: botan update auf version 1.11.34 2016-11-28 17:55:10 +01:00
Eberhard Graether e9cadbed8d ui: Show namespace label on left side of graph nodes
* Added arrow indicating namespace and package name on left side of node
* Show namespace label when hovering arrow
* Activate namespace when clicking label
* New design for namespace nodes
2016-11-28 16:28:52 +01:00
malte_langkabel 1b15933819 logic: fixed some crashes
* verbose ast visitor logs the file that is currently visited.
* fixed crash in log controller
* fixed crash when solving the name of an anonymous element that has no valid location
2016-11-28 16:10:01 +01:00
Andreas Stallinger 0fad00e6f2 ui: clear button logview 2016-11-28 16:01:50 +01:00
malte_langkabel 16636cc875 data: improved file clearing performance a lot 2016-11-28 10:32:39 +01:00
Andreas Stallinger f53f6dae98 ui: logview logic in controller
* logfilter in applicationsettings
* logview limit 500 entries
2016-11-25 15:16:07 +01:00
Andreas Stallinger 3a61a98e4b fix: removed vssolutionfiles from cmakelists files 2016-11-25 13:57:24 +01:00
Manuel Dobusch 1e7fb9c6b7 src: Re-added VS project button
Re-added the vs project button for new projects after the vs solution parser has been removed.
2016-11-24 18:10:05 +01:00
Manuel Dobusch 3580ed79f7 src: removed visual studio solution parser
Removed the visual studio solution parser and its tests as it is deprecated
2016-11-24 17:04:59 +01:00
Manuel Dobusch 9aa07d46aa utility: windows setup update
Changed windows setup folder layout and added readme file
2016-11-24 16:18:37 +01:00
malte_langkabel 3124a4320e logic: expanded indexer to cover more template argument related elements
* recording of usages of FunctionProtoTypes (e.g. "int(void)" can be used as a template argument)
* implemented solving names of dependent template specialization types (these are not as bad as it sounds ;) )
* implemented correct solving or decayed types
* fixed: qualified type usages are recorded in the correct context
* changed cxx indexer tests not to crash anymore when something is not found
2016-11-24 15:56:55 +01:00
malte_langkabel d787db57be logic: re-added ability to abort AST traversal by pressing esc 2016-11-21 16:54:34 +01:00
malte_langkabel 57e708338b logic: fixed potential crash when solving decls in lambda captures
* fixed potential crash when solving decls in lambda captures
* fixed solving type of anonymous structs/classes in c code
* added null checks in name resolvers
2016-11-21 16:31:35 +01:00
malte_langkabel 9084d3bd7c ui: added info screen for indexer crash investigation
* in case Coati crashes while indexing this screen will inform the user of further steps to take in order to find out what happened
2016-11-21 12:36:42 +01:00
malte_langkabel 6b1e3c6b7f logic: implemented recording references to symbols inside lambda capture lists 2016-11-17 17:25:30 +01:00
malte_langkabel 61df5ed96c ui: fixed display of links to missing symbols in project description 2016-11-17 15:40:02 +01:00
malte_langkabel 948450e8bd ui: fixed issue that sometimes caused coati to slow down to a halt when activating symbol 2016-11-17 14:54:43 +01:00
malte_langkabel f6bae317c9 logic: implemented recording correct signatures for c++ lambdas 2016-11-16 16:34:41 +01:00
malte_langkabel 7873710ba8 src: refactored name resolvers
* added classes that represent different name kinds
* rewrote NameResolvers to return the new name classes instead of NameElement and NameHierarchy
* removed DataType classes since their functionality moved to the CxxTypeName class.
2016-11-16 15:37:02 +01:00
Eberhard Graether a35e8a53de logic: Fixed issues in search
* fixed bad search performance when rescoring
* fixed commands had no text in autocompletions
* no autocompletions when entering fulltext search query
* check query actuality before processing autocompletions
2016-11-15 08:12:14 -08:00
malte_langkabel 96ee2b997c build: execute update java indexer in prebuild of java lib 2016-11-14 17:26:03 +01:00
Andreas Stallinger 98573fc6fd ui: clear button in logtab
<description>
2016-11-14 14:57:56 +01:00
Andreas Stallinger 56ab09159b ui: remove MessageNewLog
* remove Logging checkboxes in prefernces
* commandline parser project path is absolute when called from commandline
2016-11-14 13:38:31 +01:00
malte_langkabel c95eecdd7e src: removed some unused code 2016-11-14 13:29:03 +01:00
malte_langkabel 9ba3cf165c logic: improved indexer coverage for using decls, using directives
* moved source code for solving names of NestedNameSpecifiers to new CxxSpecifierNameResolver.
* implemented recording of UsingDirectives.
* implemented using file as context for using directives and using directive decls if no other context is available.
* re-implemented recording of the auto keyword
2016-11-14 13:16:20 +01:00
Eberhard Graether 2b830fd2c0 build: Fixes for build 2016-11-11 16:11:45 +01:00
malte_langkabel fb72f73567 ui: split steps of indexing files and saving the last few batches of data
* implemented showing dialog for database injection
* implemented easy-to-read way of creating behavior tree structures
* moved injector wait logic out of injection task
2016-11-11 15:40:28 +01:00
malte_langkabel 65eca50be4 utility: added Java requirements to Readme 2016-11-11 11:42:59 +01:00
malte_langkabel fb2ea3f702 source: removed typecast from CxxAstVisitor 2016-11-11 11:26:27 +01:00
Manuel Dobusch 0a3200f8ff ui: vs plugin integration
Reworked vs solution based project setup to utilize new CDB feature
2016-11-10 17:40:14 +01:00
malte_langkabel 9aed97eee2 logic: improved c++ indexer coverage
* revised check for visiting a referenced type or decl
* calling client->onFileParsed everytime a file gets processed by the Preprocessor so we can create valid locations in that file
* created test for detecting a usage of a member inside a CallExpression context
* added method to consume a context based reference kind in the AstVisitor
2016-11-10 16:39:52 +01:00
Andreas Stallinger cf8e8c7655 ui: log tab 2016-11-10 11:09:24 +01:00
malte_langkabel 338335acf3 data: re-added element_id index for occurrences 2016-11-09 12:42:45 +01:00
malte_langkabel 3f27c89965 data: reducing database size by discarding indices
* added storage modes to facilitate adding and removing sqlite indices as needed.
2016-11-04 14:29:20 +01:00
malte_langkabel e7c9a1340e data: reduced size of generated .coatidb files
* added occurrence table to get rid of duplicate source locations
* reverted storage provider
2016-11-04 08:43:10 +01:00
Andreas Stallinger 98869e51a5 fix: astvisitor fixes
* renaming files
* fix typo
* clang waringns
2016-11-03 12:38:36 +01:00
malte_langkabel 5b47d195ff data: fixed anonymous symbol name conflicts (issue #241)
* added start location to symbol name string
* added tests for this case
2016-11-03 09:08:35 +01:00
malte_langkabel f80a371d44 src: fixed crashes on parsing Coati
* also fixed log path getting messed up by indexing a project using a CDB
2016-11-01 15:23:21 +01:00
malte_langkabel 9e4a02a33a src: added optional indexer AST logging
* removed old AstVisitor
* added new implementation called CxxAstVisitor
* added CxxVerboseAstVisitor that may wrap the CxxAstVisitor to log the AST while visiting
* added the same structure for the Java visitors
* removed all the logs that were fired when recording stuff
* Added UI setting for verbose indexer logging.
* implemented AST name obfuscation for Java and Cxx
* unified test visitors for Java and Cxx
* implemented recording using directive decl
* removed most of the old onXxxParsed methods
2016-11-01 10:37:30 +01:00
Eberhard Graether a4240def56 ui: Added second line to search autocompletion list showing namespace or filepath
* Show namespace or filepath in second line of search autocompletions
* Add filepaths relative to .coatidb location
* Rescore matches to acknowledge line split
* Fixed SearchMatch type to be drawn always visible at right edge
2016-10-31 22:41:17 +01:00
Andreas Stallinger 8445e705f6 ui: errorview readonly cells
no more editing the errors
2016-10-31 15:17:33 +01:00
Eberhard Graether 4df89a18f3 build: Added changelog for Release 0.9.23 2016-10-27 14:14:54 +02:00
malte_langkabel 4cb285b138 build: windows installer fix
* added project specific icons to windows installer
* implemented automatic generation of the version number for the windows installer
2016-10-27 12:56:27 +02:00
malte_langkabel 9f847f7897 build: structure of windows deploy project
* moved installer dlls to lib folder
* updated .gitignore to be more specific
* added notes on cleaning the installer project to readme
* made rebuilding of databases optional in windows deploy script
* removed local paths for devenv.com from windows deploy script
2016-10-27 11:38:36 +02:00
wrongway88 38d0cb36aa logic: Added plugin Logging
Added plugin file logging and exception handling.
Also fixed some reported bugs from the last release version.
Updated documentation.
2016-10-26 17:58:20 +02:00
wrongway88 e78162fa43 utility: installer runtime dlls
Added VC++ runtime dlls for windows installer
2016-10-26 00:24:20 +02:00
wrongway88 b12e2b4e16 build: missing vc runtime dlls
Added missing VC++ runtime dlls.
2016-10-26 00:13:42 +02:00
Eberhard Graether 738e81ea49 src: Helpers for modular preferences creation 2016-10-25 23:57:04 +02:00
Eberhard Graether 76fb7c4e6c ui: Added setting for graph zoom on mouse wheel by default to preferences
On popular demand.

bug id = 237
2016-10-25 22:52:36 +02:00
Eberhard Graether 2e10c65491 ui: Scroll table to newest error and fixed error number column width 2016-10-25 17:47:38 +02:00
Eberhard Graether 15bd89e0ed logic: Fixed best scoring of SearchIndex to cover all cases 2016-10-25 01:05:54 +02:00
Eberhard Graether 9473e62aaf ui: Fixed color scheme not updated on refresh 2016-10-21 15:38:07 +02:00
Eberhard Graether e557e04000 ui: Avoid flickering when clearing empty errors table 2016-10-21 15:06:39 +02:00
Eberhard Graether 4d3a852de7 ui: don't show error snippets in overview 2016-10-21 14:53:23 +02:00
Eberhard Graether 0e8c0ee18a src: refactored ErrorInfo to be used as standard error type outside of Storage 2016-10-21 14:48:20 +02:00
Eberhard Graether a5613715db logic: Fixed crash when Project Paths contain files and lazy include search in enabled
bug id = 201
2016-10-20 23:20:46 +02:00
Eberhard Graether 06c7a4e159 logic: Fixed bugs in TaskParse scheduling
* Added TaskParse as base for TaskParseCxx and TaskParseJava
* Fixed increment and decrement of indexer_count on blackboard not atomic
* Fixed TaskInjectStorage finished before TaskParse started
* Fixed project not cleared when refreshing on now empty project
* Fixed TaskInjectStorage overheating when nothing to do
2016-10-20 23:02:54 +02:00
Andreas Stallinger a388932864 ui: startscreen project icons
* language specific icon on startscreen
* TODO maybe replace the icons with others
2016-10-20 12:17:35 +02:00
Andreas Stallinger ea207c786d utility: commandlineparser crash
* commandlineparser crash when no/invalid project file
* filepath instead of string in commandlineparser
2016-10-19 16:40:01 +02:00
Andreas Stallinger b11f583729 utility: graph export linux
qfiledialog on linux does not add extension of filter to filename
2016-10-18 13:05:20 +02:00
malte_langkabel 9ce5cd9c1c ui: log Coati version each time logging is enabled 2016-10-17 12:00:40 +02:00
Andreas Stallinger 4e0ebaef12 logic: errorview fix non index errors, use filepath instead of string in
commandline parser

<description>
2016-10-17 11:19:39 +02:00
Eberhard Graether 730eebe13a build: Copy plugins in Mac bundle script 2016-10-14 15:39:43 +02:00
Eberhard Graether 88aca6075c build: Added changelog for release 0.9 and updated version in docs 2016-10-14 15:36:36 +02:00
Eberhard Graether 721d160abb web: Added blog post for release 0.9 2016-10-14 14:36:11 +02:00
malte_langkabel ad2210d2bb build: Fixed description of Windows release 2016-10-14 12:29:55 +02:00
malte_langkabel 826a9a5e1b logic: disabled console logging in Java indexer 2016-10-14 11:15:30 +02:00
Andreas Stallinger 0045082efe documentation: log windows images 2016-10-14 11:07:16 +02:00
malte_langkabel ab023cbc3b build: updated windows installer
* added new files to windows installer
* updated tutorial project
2016-10-14 10:25:47 +02:00
Eberhard Graether fad70680b0 build: update java-symbol-solver for Mac 2016-10-14 09:55:04 +02:00
Eberhard Graether 30d222b7db logic: More fixes for release
* Fixed crash on undoing aggregation edge
* Avoid mutex locking in logging classes when logging is disabled
* Readded dark color scheme
* Fixed font size of type label in autocompletion list
* Fixed text drawing in autocompletion list
* Only give camelcase score when no noletter score was given
* Added MessageShowErrors to undo stack
* Select error line in table when undoing MessageShowErrors
* Notify user about new Plugin in description of From Visual Studio project setup
* Fixed row height of Project File Location label in project setup
2016-10-14 00:45:37 +02:00
wrongway88 2dc9995cc1 logic: vs plugin upgrade beta
Added CDB creation
2016-10-13 20:48:06 +02:00
malte_langkabel 1f904620ae data: added new build of VS plugin 2016-10-13 19:05:48 +02:00
malte_langkabel 49f1844470 data: updated jars for JavaSymbolSolver for windows
* updated jars for JavaSymbolSolver for windows to version of commit b7b2efe2
* removed tests that don't work anymore (because they need files on the file system)
2016-10-13 18:51:35 +02:00
Andreas Stallinger f1be2222e3 build: update java-symbolsolver for linux
* java symbolsover update for linux
   * error_view temp image
   * log view added/errorlist
2016-10-13 17:47:21 +02:00
malte_langkabel 0f374c5455 data: added settings for error-view to default windows settings 2016-10-13 17:14:16 +02:00
Eberhard Graether 149a305761 logic: Fixed error view related issues
* polished color schemes for error view
* fixed error id column not hidden
* fixed error count shown correctly in each view
* moved storage stats logging to application
* fixed indexed flag of errors broken for indexed headers in cdb project
* fixed scrolling to active error when errors where not visible before
* reverted tictactoe files to no errors
2016-10-13 14:21:22 +02:00
Andreas Stallinger 5e8133972a script: linux package cleanup
trial stuff removed
2016-10-13 13:09:20 +02:00
Andreas Stallinger dc064e4756 ui: Errorview
Tabbed view with errorview as tab
2016-10-13 12:37:10 +02: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 c018020a73 logic: removed ring-logging
* made ring-logging optional
2016-10-11 17:47:22 +02:00
Eberhard Graether f6ae1afdb2 ui & logic: fixes for release
* smaller indexing progress dialog with bar in the middle instead of golden ratio
* set default code snippet expand range to 3
* no minimum height for project file location element in project setup wizard
* move aggregation and inheritance edges to front when hovered or active
* push parent nodes of active nodes to back to make edges to the active child visible
* properly quit application when window is closed while confirm box is open
* properly quit application when window is closed while indexing
* only count top level nodes for count on bundle nodes
* give noLetterScore to index 0 in search index scoring

bug id = 121
2016-10-11 15:38:44 +02:00
malte_langkabel 86f652d221 src: added ReaderWriterLock, helpers and Semaphore 2016-10-10 17:37:38 +02:00
Eberhard Graether 072cccf852 data: calculate best scores for autocompletion matches by moving indices 2016-10-10 16:51:40 +02:00
malte_langkabel 95859d9605 ui: fixed panning to avoid jumping back to zero on mouse down 2016-10-10 11:37:56 +02:00
malte_langkabel b66f98b1e7 build: fixed windows build for app-trial merge 2016-10-10 11:33:19 +02:00
Andreas Stallinger d2e1c62b59 build,test: fix linux build and tests
* FilesystemTest fix for linux
* isTrial.h include removed
2016-10-10 09:23:39 +02:00
Eberhard Graether 0d950d96f5 logic: refactored license checking 2016-10-08 15:45:11 +02:00
Eberhard Graether 1b8736a6e1 logic: Rewrote license checking logic for trial and app merge 2016-10-08 13:42:40 +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
malte_langkabel 0bb17b08d3 logic: fixed refresh crash reported in issue #220 2016-10-07 10:41:28 +02:00
malte_langkabel 947b93c572 build: fixed javaslang.jar name in windows installer 2016-10-04 18:23:36 +02:00
malte_langkabel d59b18f6e7 logic: improved reliability of Java indexer
* moved to JavaParser 3.0
* Fixed many unsolved types and symbols
2016-10-04 17:38:39 +02:00
malte_langkabel 47d7a3a509 data: changed name of Java generic type to use name of declaration
* changed the name resolution of generic type instantiations to use the name of the type's declaration instead of using the provided type arguments here.
* fixed tests
2016-10-03 12:50:51 +02:00
Eberhard Graether 3dffd55f75 logic: Fixed refreshing when source paths were removed
* Define exit state for TaskRepeatWhileSuccess
* Added TaskFinishParsing to end of parsing task sequence
* Also measure time spend clearing files in total index time
2016-09-29 14:58:45 +02:00
malte_langkabel e5cd905670 ui: maximum allocated jvm memory configurable in preferences
* added setting for maximum memory allocated by JVM to Preferences window.
* a value of -1 ignores this setting
* changed default value for this setting to -1
* increased JNI version to Java 1.8

* disabled some file system tests for windows
2016-09-29 10:05:03 +02:00
Eberhard Graether 52fb2ae6f6 logic: Follow symbolic links to directoris within source paths
* Follow symbolic links to files and references by default now
* Fixed crash on self-referencing symbolic links

bug id = 205
2016-09-28 15:26:43 +02:00
Eberhard Graether d70079825a ui: Black and white size grips for dialog windows 2016-09-22 15:59:37 +02:00
Eberhard Graether 6d55adabaa ui: Use type node colors for undefined nodes 2016-09-22 15:04:25 +02:00
malte_langkabel ba6aee45be logic: show java import not found as error
* implemented resolving nested types, methods and fields in import statements
* updated java-symbol-solver and corresponding jars
* renamed toNameHierarchy methods of Java...Name classes
* renamed Java name resolvers
2016-09-21 12:05:53 +02:00
Eberhard Graether 77cf33666f ui: Select code in code view with SHIFT + drag
bug id = 7
2016-09-21 11:23:47 +02:00
Eberhard Graether 589962b09e ui: Added markers to active lines in code view 2016-09-18 00:17:15 +02:00
Eberhard Graether c499de9b78 build: added changelog for release 0.8.21 2016-09-16 13:51:20 +02:00
malte_langkabel 3b7baba24b build: merge Coati app and Trial to single executable
* removed trial target
* updated deploy scripts to exclude trial
* cleanup CMakeLists
* removed Eigen dependencies
* split parser lib into lib_cxx and lib_java
* added ProjectFactory and ProjectFactoryModules
* removed old installer projects
* updated wix installer
  * updated readme for wix setup
  * updated to use obfuscated exe
  * added qt.conf
  * added indexing dialog images
  * added jars
  * added coatidb files of sample projects
  * added source code of javaparser sample
  * removed auto-refresh image
  * intermediate files of windows installer are created in build folder
  * preselected desktop shortcut
  * build bat is executed from deploy_windows script
2016-09-16 12:45:00 +02:00
malte_langkabel 8fcb35611d build: windows upx
* changed windows deploy script back to use upx --brute
2016-09-16 10:31:04 +02:00
Andreas Stallinger 169ca74aa3 ui: font dropdown fix 2016-09-15 16:39:57 +02:00
Andreas Stallinger ac20f6d244 ui: SelectPath Dialog update
check/uncheck buttons added to the dialog
2016-09-15 13:30:45 +02:00
Eberhard Graether 002475169c logic: save Project version when creating a new project 2016-09-15 13:07:28 +02:00
malte_langkabel 136042d047 logic: moved task waiting
* moved waiting from TaskInjectStorage to TaskGroupParallel so that the tasks that run here have the same conditions as tasks running in the TaskScheduler
2016-09-15 12:51:06 +02:00
Eberhard Graether 5680bf7b25 logic: Added migration for C/C++ standard to ProjectSettings
* extended SettingsMigrator to support lambdas
* added PROJECT_STATE_NEEDS_MIGRATION and dialog for loading old project files
2016-09-15 12:23:18 +02:00
Eberhard Graether 73ef7c1bcb logic: Fixed C language setting not propagated to Parser and added all supported language standards for C/C++ 2016-09-15 00:07:47 +02:00
Eberhard Graether b1b2262581 logic: Fixed indexing tasks
* Added mutex to BlackBoard
* stop inject task from blocking CPU in endless loop
2016-09-15 00:02:50 +02:00
malte_langkabel ae879ba0f7 script: update windows installer
* added qt.conf to app and trial windows installers
* removed jars from trial installer
2016-09-14 19:14:38 +02:00
Andreas Stallinger 221ac9ed64 documentation: sublime-coati with Package Control
sublime-coait is now available via Package Control
2016-09-12 20:05:37 +02:00
malte_langkabel f06dd6abc5 logic: improved indexer parallelization
* added task that injects into PersistentStorage parallel to indexer tasks.
* added Blackboard for Task classes
2016-09-12 11:52:14 +02:00
Eberhard Graether 1335f9512a ui: Changed all font-sizes from pt to px for same results on all platforms 2016-09-09 02:31:11 +02:00
Andreas Stallinger f1be68b1a0 documentation: javapath for linux corrected
* replaced the bin with lib directory
2016-09-08 18:29:14 +02:00
Andreas Stallinger 0137726328 ui: filter monospace fonts
* relpaced onw construction with QFontComboBox
* filter monospace font
2016-09-08 16:15:32 +02:00
Andreas Stallinger ba800c9866 ui: font dropdown
added font dropdown in preferences
2016-09-08 13:56:40 +02:00
malte_langkabel 8f6a7a1cca build: fixed to compile for mac and linux again
* removed direct usage of MessageListener from lib parser
2016-09-08 12:54:13 +02:00
malte_langkabel f55d8a73f1 build: added qt.conf on windows
* added qt.conf file (for font render engine) that will be copied to the app dir in setup script
2016-09-07 15:39:46 +02:00
malte_langkabel 4f302b0d1d logic: reimplemented task system to abort ast visiting
* reimplemented interrupting TaskParseCxx by adding a listener for the MessageInterruptTask and returning a failure status code on update. This cancels the parent sequence task which results in the indexed items not getting inserted into the persistent storage
* removed the capability for interrupting from TaskScheduler
* changed task system to be closer to the standard behavior tree implementation
* changed task system to accommodate the 3 status return types: Running, Success and Failure
* made TaskGroupSequential fail once a member task fails
* made TaskGroupParallel fail once a member task fails
* split TaskParse... into one task for indexing and one task for injecting
* added TaskRunner that handles updating and resetting the managed task
* fixed numbers that are shown as parsed file count in indexing ui
* fixed deadlock that originated from interaction between TaskScheduler and MessageQueue (one thread wanted to destroy a message listener on a task while the other one wanted to send as message as a task)
2016-09-07 14:39:34 +02:00
Eberhard Graether cbcf56f7dc ui: Save graph as image via context menu
bug id = 180
2016-09-06 15:16:49 +02:00
Andreas Stallinger dd49fcd709 build: Linux package base folder
Added a Coati folder as base to the archive
2016-09-06 13:05:20 +02:00
Eberhard Graether 5932d0f872 ui: use golden ratio in indexing progress dialog 2016-09-05 12:44:47 +02:00
Eberhard Graether a2afcf879b web: release post 0.8 2016-09-05 12:30:11 +02:00
malte_langkabel 7271e30434 ui: state required Java version
* revised texts in application preferences and documentation to state the currently required Java version
* update deploy script on windows to use UPX with "--best" instead of "--brute"
2016-09-01 13:40:06 +02:00
malte_langkabel a014f9f7a6 web: documentation update for Coati 0.8 2016-09-01 13:15:48 +02:00
Eberhard Graether ef24f528c3 build: Added Java files and sample project to Mac Bundle 2016-09-01 10:28:03 +02:00
malte_langkabel 464ed518d8 build: update windows installers
* updated version numbers of installers on windows
* renamed start menu entries from trail to trial
2016-09-01 10:10:56 +02:00
malte_langkabel 850be396aa build: windows deploy fixes
* added javaparser.coatidb to app setup project
* clearing javaparser.coatidb before building it in headless more for deploy
* added all plugins to windows deploy script
2016-08-31 16:37:45 +02:00
Andreas Stallinger 2e9422a8cf src: add READMES for ide plugins and linux jars 2016-08-31 12:47:50 -01:00
Eberhard Graether bb5372efce build: Added changelog for 0.8.0 2016-08-31 14:52:38 +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
malte_langkabel d2de395ed5 logic: revised loading Java library
* implemented a dynamic way (that does not involve the linker) to load the Java runtime library
* implemented JavaPathDetectorLinux
* Filepicker for Java runtime library now asks to pick JVM library instead of folder
* extended error handling for JavaEnvironmentFactory
2016-08-31 12:16:29 +02:00
Eberhard Graether eb621eea33 ui: Fixed correct delimiter per language used in search field 2016-08-31 11:37:53 +02:00
malte_langkabel ad719aeaa8 ui: revised project setup descriptions
* revised texts in project setup ui
* fixed crash during project setup when CDB file is empty
* fixed row height of project location in CDB project setup
2016-08-30 16:52:28 +02:00
Eberhard Graether ebdc2d3382 ui: Revised project setup
* changed help texts
* use help buttons instead of descriptions in dialogs
* fixed show files button not up-to-date with directory list box
* fixed source file extensions shown in cdb setup
* refactored size and content setting for project content classes
2016-08-30 11:20:32 +02:00
Eberhard Graether d4131ce92c data: Fixed error locations not saved with absolute filepaths in CDB projects 2016-08-29 23:30:59 +02:00
Eberhard Graether 0143268f90 test: Enabled Java tests and fixed clang warnings 2016-08-29 12:24:17 +02:00
malte_langkabel d9c9e4b3eb logic: using javapath on windows fix
* fixed usage of javapath on windows: search in provided path before resorting to content of path variable
2016-08-29 12:05:40 +02:00
malte_langkabel 9701332fd0 logic: using source folders for header search
* adding folders form source paths to header search paths for convenience. We are using system header search paths here so that users can also use "<..>" in their includes.
2016-08-29 11:29:03 +02:00
malte_langkabel 4bac37096a logic: moved javapath validation
* moved creation of java environment factory to build index method. This fixes a bug where project refresh was not working when setting the java path after loading the project.
2016-08-29 10:49:59 +02:00
Eberhard Graether d3b10bc5fd ui: Fixed font colors in indexing dialogs and line breaks in status bar 2016-08-26 15:31:57 +02:00
Eberhard Graether 00980f73af ui: Added missing source files extensions setting to edit project dialog
bug id = 132
2016-08-26 15:08:32 +02:00
Eberhard Graether 892df2abac ui: Changed default colors for UI elements to black
bug id = 140
2016-08-26 14:59:21 +02:00
Eberhard Graether ca0a1ffb89 ui: Added plugin ports to preferences
bug id = 145
2016-08-26 14:41:39 +02:00
Eberhard Graether 401c23f572 ui: Smaller fonts in indexing dialogs 2016-08-26 13:45:05 +02:00
Eberhard Graether 55ae17af29 ui: Added Java Path detector for Mac 2016-08-26 13:27:34 +02:00
Eberhard Graether f719212678 logic: Fixed project refresh to acknowledge project state 2016-08-26 12:42:57 +02:00
malte_langkabel d25bba4b59 ui: java not found popup 2016-08-25 15:44:55 +02:00
malte_langkabel 0268e924aa data: java sample project
* added javaparser as sample project
* fixed crash in utility::isPrefix when prefix is longer than the actual string
* fixed crash when inserting a meta value that contains a special character
* added "language" to project settings of tutorial
* changed separators in serialized name hierarchy
* added javaparser project to windows installers
* enabled the checkbox for start menu shortcut in installer by default
* removed autorefresh icon
* removed JavaSmallTest project
2016-08-25 15:18:00 +02:00
Eberhard Graether 520a1b2d48 ui: Fixed regex for system includes used mistakenly 2016-08-25 15:11:48 +02:00
Eberhard Graether a15dccb219 src: Fixed clang warnings 2016-08-25 14:45:18 +02:00
Eberhard Graether 2fa75f46cd fix: Fixed logging 2016-08-25 14:13:35 +02:00
Eberhard Graether bff9430fa2 logic: Enable/Disable Logging in Preferences
* disabled by default
2016-08-25 13:44:43 +02:00
Eberhard Graether 03bbce45c9 logic: Application settings migration system
* Added version number to ApplicationSettings
* Added SettingsMigrator for defining migration rules for different ApplicationSettings versions
* Migrate ApplicationSettings when loading
2016-08-25 12:40:54 +02:00
Eberhard Graether cc8ea7c8fb ui: Fixed error locations and messages not matching 2016-08-24 18:04:20 +02:00
malte_langkabel 8dfc1ea9d9 ui: autodetect java on windows
* implemented a more generic approach to detecting filepaths
* reimplemented standard header detection using this approach
* added auto detection of JVM dynamic library on windows
* fixed java tests that were broken when updating the java_indexer project before this commit.
2016-08-24 15:21:04 +02:00
Eberhard Graether 01f740276b ui: removed auto refresh 2016-08-24 13:28:28 +02:00
malte_langkabel 994a749b80 build: added missing include
* added missing include for indexing UI feature
2016-08-24 11:38:09 +02:00
Eberhard Graether 2c90b75a9f ui: Indexing UI
* Added DialogView with QtDialogView implementation to handle information dialogs
* Implemented QtIndexingDialog class that covers all different dialogs for indexing
* Directly communicate with DialogView from Prpject and all Tasks involved in indexing
* Block QtMainWindow UI while indexing
2016-08-23 23:45:45 +02:00
Manuel Dobusch 377f0ef34f logic: project setup fix
Checking whether a project is currently loaded before accessing it...
2016-08-23 16:47:57 +02:00
malte_langkabel 0ad7585811 data: removed java import errors
* removed error recording when import not found because of false positives
2016-08-23 15:58:22 +02:00
Manuel Dobusch a1277a92f4 logic: added language setting to vs project parser
Language setting was missing from projectSettings created by the vs solution parser
2016-08-23 15:50:24 +02:00
malte_langkabel c3355f3c1a ui: hide name qualifiers for java graph nodes
* removed name qualifiers in non-package graph nodes for java projects
2016-08-22 16:38:23 +02:00
malte_langkabel 274eca0e5d ui: added java licenses
* added license info for 3rd party jars to license ui
* removed unused jars for java indexer
2016-08-22 15:57:54 +02:00
malte_langkabel 858364b385 logic: handle java not found on windows and mac
* implemented java will not be used if it is not found on system
* add jni libraries weak linked for Mac
* use dlopen for lazy library loading
* added java path to preferences
2016-08-22 14:24:53 +02:00
malte_langkabel 98eb3f124d logic: fix jar not found exception
not found jars or classpath items are not handed forward to the java indexer because the java code throws exceptions when attempting to create a jar type solver for these.
2016-08-22 10:34:26 +02:00
Eberhard Graether c43e074c9e ui: Added plain text editing dialog to list boxes in project setup UI
* Added class QtTextEditDialog for displaying text content
* Added edit button to QtDirectoryListBox
* Replaced show files button dialog using QtProjectWizzardContentSourceList with QtTextEditDialog
2016-08-20 00:46:09 +02:00
malte_langkabel e508741c9a data: refresh with java imports
* coati regards import dependencies when refreshing a project
2016-08-19 13:48:02 +02:00
malte_langkabel 9255d45b94 ui: language dependent symbol name delimiter
* implemented symbol delimiter as static field of NameHierarchy which is set when a project is created.
2016-08-18 15:22:25 +02:00
Eberhard Graether c269493942 ui: Added scroll speed setting to preferences 2016-08-18 12:12:19 +02:00
malte_langkabel 3d40f4ed4e data: error for java import not found
* added recording an error in this case.
* added test for this case.
2016-08-17 17:04:23 +02:00
Eberhard Graether a3001b2b72 ui: Added Java project setup UI 2016-08-17 13:12:26 +02:00
Eberhard Graether 566cface6c build: java indexing fixes for MacOSX 2016-08-17 10:46:18 +02:00
malte_langkabel 783e0ac060 data: recording braces in java
* implemented recording of scope braces as local symbols for java
2016-08-16 15:22:59 +02:00
malte_langkabel 77848a3d67 build: java indexing fixes for linux 2016-08-16 10:10:18 +02:00
malte_langkabel ae5a6a5d46 data: unresolved type names
changed names of unresolved types from "error-type" to "unresolved-type" because it's easier for the user to understand what that means.
2016-08-12 15:50:25 +02:00
malte_langkabel 5c0ed7f7f2 data: avoid duplicate access components
* added check to make sure that an access component does not already exist before inserting it into the database
2016-08-12 15:36:48 +02:00
malte_langkabel 279fc7ae82 data: shortened local symbol names
* removed var name from local symbol names that get stored in the db
2016-08-12 09:58:35 +02:00
Andreas Stallinger 8776a8e285 data: separate table for filecontent 2016-08-12 09:55:46 +02:00
Manuel Dobusch c6a6e6d028 build: wix installer integration
Updated wix installer to better facilitate the integration into the deploy process.
2016-08-11 15:14:15 +02:00
malte_langkabel c847fba568 src: Project Refactoring
* Added language specific Project and ProjectSettings
* moved project specific code from Application to Project
* made Application a singleton
* added handleDialog method to Application which displays a dialog window and waits for user input
* Added ScopedFunctor that executes a function when deleted
2016-08-11 12:17:13 +02:00
Eberhard Graether 6b51c7cfe4 logic: Fixed scrolling to line from plug-in and moved all code view scrolling into QtCodeNavigator 2016-08-10 16:16:32 +02:00
Eberhard Graether 2800c072ff logic: Cache graph and stats of overview in StorageCache 2016-08-10 13:15:45 +02:00
Manuel Dobusch d0cf500c8e build: new windows installer
Created new windows installer based on the WiX Toolset
2016-08-09 16:32:27 +02:00
Eberhard Graether 9cda1e773d logic: Fixed graph nodes restoring their expand state
bug id = 118
2016-08-09 15:32:14 +02:00
Eberhard Graether b9f518feed ui: Fixed content disappears when switching color scheme in preferences 2016-08-09 14:07:59 +02:00
Eberhard Graether d0a063a3b6 ui: Added shortcuts for navigating to next and previous reference in code view
* Added new class QtCodeNavigator between QtCodeView and QtCodeFileList that handles active ids and navigation
* Pass all files as initially collapsed to code view and decide in QtCodeNavigator which ones show content
* Rewrote requesting of active snippet display to top down approach
* Display other locations focused when active location changes
* Show corresponding edges when navigating references
2016-08-09 13:29:14 +02:00
malte_langkabel 210c5b1245 src: java exception handling for override edges
* added exception handling when resolving override edges.
2016-08-08 15:33:34 +02:00
Andreas Stallinger d36a0fc07a documentation: plugin repos added
* repo urls added
* eclipse manually installation instruction added
2016-08-08 11:01:25 +02:00
Eberhard Graether 17fece804b ui: Tab in search completes up to next ::, Delete erases to last ::
bug id = 133
2016-08-06 16:39:43 +02:00
Eberhard Graether fae418897c ui: sub bundle for anonymous namespaces
bug id = 126
2016-08-06 14:47:38 +02:00
Eberhard Graether 7616e07eeb ui: Added help menu actions to show log and data folders 2016-08-06 13:14:30 +02:00
Eberhard Graether 3c88998c10 src: fixed clang warnings 2016-08-06 12:53:17 +02:00
Eberhard Graether f7de8d017a ui: Added new load gif with higher resolution 2016-08-04 17:02:48 +02:00
malte_langkabel 19d6ca3079 data: type alias indexing
* added recording of type aliases (note: template type alias does not work properly right now)
2016-08-04 13:12:54 +02:00
malte_langkabel b072972b50 data: indexing java
* expanded appsettings to include java specific stuff
* added java indexer as separate project that can be build via its build script
* added dependencies for java indexer to the setup folder
* added license files for these dependencies.
* added sample project for java. this is just to test java on other machines and can be removed again in the future.
* the java parser test suite is currently uncommented because java is not running on every machine.
* added some more node types
* removed TokenComponentAccess::AccessType and replaced all its usages by using AccessKind
* moved access components from edges to nodes
* using recordReference of ParserClient for java
* removed recording access specifier of inheritance edges.
* added styles for new node types
2016-08-04 09:20:13 +02:00
Eberhard Graether 05c06a6102 ui: Changed graph access public icon and added default icon 2016-08-03 18:06:30 +02:00
Andreas Stallinger 66e48d5608 documentation: Atom added and Melpa(Emacs repo)
* add atom plugin to docu
 * emacs plugin is now on melpa(online package archive)
2016-08-02 11:51:46 +02:00
Eberhard Graether b32836c58f blog: Google story blog post 2016-07-30 00:36:24 +02:00
Andreas Stallinger f88cc16a36 docu: plugin section updated
emacs, vim, ...
2016-07-28 17:08:15 +02:00
Andreas Stallinger d5e9cecef3 logic: scroll code when no symbol
Scrolling to line, when comming from plugin and the file is was modified.
Since there we dont know from the position data if the symbol on position is the right one,
we scroll to the line if modified.
2016-07-28 14:16:15 +02:00
Andreas Stallinger acaf58c3f8 ui: Shortcut for Preferences on Linux/Windows 2016-07-28 14:12:09 +02:00
Eberhard Graether 2672299a58 ui: Stay at original line when expanding scope in the code view
bug id = 82
2016-07-22 14:57:36 +02:00
Eberhard Graether f4677a902d ui: Pan graph view to name of active symbol after activation
bug id = 80
2016-07-22 13:57:58 +02:00
Eberhard Graether b2cb95de1b ui: Moved color scheme selection to preferences
* removed 'Switch Color Scheme' action from View menu
* added dropdown with all fetched color schemes to preferences

bug id = 114
2016-07-20 17:27:53 +02:00
Eberhard Graether 6e9a6f9a8d ui: Moved Preferences to Edit menu
bug id = 113
2016-07-20 15:57:45 +02:00
Eberhard Graether cb869c2465 data: Store separate storage version number in SqliteStorage for managing migrations
* deprecated the third version number as storage update number
* version can now have either 3 or 4 numbers
* whether a .coatidb file is outdated is now solely determined by the SqliteStorage::STORAGE_VERSION
2016-07-20 14:14:21 +02:00
Eberhard Graether eb8808b624 logic: Hide non-fatal errors in unindexed files
* added database field indexed to error to tell if the error occured within an indexed file
* added checkbox to Preferences for showing them
2016-07-20 12:24:46 +02:00
Eberhard Graether f93b31a942 ui: Fixed file out-of-date star disappearing when showing snippets after minimized state, AKA star bug 2016-07-19 14:42:04 +02:00
Eberhard Graether 46be24ab26 web: Added page navigation top and bottom to blog 2016-07-18 17:33:52 +02:00
malte_langkabel 11a1ccc822 web: updated blog post "Parameter or Argument?" 2016-07-14 17:17:19 +02:00
malte_langkabel ca31eda54e web: Blogpost Parameter or Argument? 2016-07-14 11:12:08 +02:00
Andreas Stallinger 5813e3dcf8 docu: Linux install script 2016-07-11 12:45:01 +02:00
Andreas Stallinger 255cb252d6 docu: update for eclipse and clion/intellij plugin 2016-07-11 12:30:13 +02:00
Eberhard Graether 8b770b0c71 ui: Increase code view performance by caching line lengths in QtCodeArea 2016-07-08 14:36:12 +02:00
Eberhard Graether 06255286ae data: No implicit nodes in search autocompletion 2016-07-08 11:08:56 +02:00
Eberhard Graether 8a13aebc3f build: Added changelog for release 0.7.0.22 2016-07-07 14:32:01 +02:00
malte_langkabel 5bfd0ecbbe build: added size grip image to windows installer 2016-07-07 13:16:18 +02:00
Eberhard Graether e604c3b025 build: Fixes for release
* show custom icon for size grip
* add small margin at bottom of windows to show full shadow on Windows
* remove color_scheme_test keyword from autocompletions
* commented failing vs solution parser tests
2016-07-07 12:25:20 +02:00
Manuel Dobusch b683d7b2d6 logic: VS Solution Macro Handling
Added handling of project specific VS macros
2016-07-07 00:14:29 +02:00
malte_langkabel dbcb8f449c ui: removed clang warnings from console
* disabled clang warnings to be dumped into the console
* changed logging type of storage stats from WARNING to INFO
2016-07-06 18:22:02 +02:00
Andreas Stallinger 592cc99cee src: fix missing include
include memory for shared_ptr
2016-07-04 15:14:54 +02:00
Eberhard Graether 4e18389d38 ui: Added singleton QtContextMenu with global back and forward actions
* QtContextMenu holds default actions for back and forward
* additional actions can be passed to extend the default menu
* currently used in QtMainWindow and QtCodeArea
* fixed crash on undo when only view actions happened since project load

bug id = 108
2016-06-30 16:49:16 +02:00
Eberhard Graether 32f894422d ui: Made QtWindow resizeable with resize grip
* added size grip to bottom right corner of QtWindow
* use layouts on start screen
* added close button in about window to layout

bug id = 102
2016-06-30 13:52:18 +02:00
Eberhard Graether b5d9d20bc9 ui: fixed flickering of search autocompletions popup 2016-06-29 22:15:00 +02:00
Eberhard Graether cba0cfad65 logic: Fixed crashes and halting during indexing
* Fixed CPPSqliteException being thrown due to not properly destructed statement in addError
* Fixed indexer getting stuck after building caches because MessageFinishedParsing was interrupted
* removed Message::cancel() method and all related code

bug id = 105
2016-06-29 14:10:26 +02:00
Eberhard Graether ba3316008a build: Fixed MacOSX build crashing on launch due to unknown command line option
bug id = 103
2016-06-28 17:50:36 +02:00
Eberhard Graether 8ca54f2091 ui: removed 'Save Project' and 'Save Project As' actions
* removed save actions from menu in QtMainWindow
* removed MessageSaveProject and all Listeners
* updated project loading to ask whether old project and db file should be kept at old location
* fixed crash for missing include files
* fixed simple header search within source paths was broken
2016-06-28 15:59:22 +02:00
Eberhard Graether 2cf033d43a data: Speed up include parsing by reusing current path in PreprocessorCallbacks 2016-06-24 14:41:17 +02:00
Eberhard Graether 3430ed2a1b logic: Fixed spaces not working in search bar
The QShortcut members of QtMainWindow did not propagate the keypress events further. The keyPressEvent of QtMainWindow
is now used instead.
2016-06-24 13:54:54 +02:00
Eberhard Graether 140d4a406a logic: Fixed detected global search paths keep original order
The global header search paths were sorted alphabetically after detection due to checking for uniqueness. This caused
problems with #include_next directives in certain std header files that relied on the correct header search path order.

bug id = 101
2016-06-24 13:35:16 +02:00
Eberhard Graether 44cee3d130 web: Fixed syntax highlighting did not work on Mac due to missing language specification 2016-06-24 12:44:11 +02:00
malte_langkabel 5161455355 web: fixed clang post
<description>
2016-06-24 11:56:13 +02:00
malte_langkabel e7efff8843 web: indexing clang with coati using clang
* added new blog post
* implemented play button for gifs
2016-06-23 17:53:36 +02:00
Eberhard Graether 7f867bf889 ui: added color_scheme_test command displaying all graph node types and states
implementations for other views comming.
2016-06-22 16:14:06 +02:00
malte_langkabel 36c504d8a0 build: added missing include 2016-06-21 10:35:38 +02:00
Eberhard Graether 9560cc4ea6 utility: Added Tracer for collecting time measurements
* define TRACING_ENABLED in utility/tracing.h to enable tracing
* invoke TraceEvent by writing TRACE() at start of function or scope
* provide an event name with TRACE("name")
* press SPACE to show collected traces history and report with accumulated times
2016-06-16 12:03:34 +02:00
Eberhard Graether 6b31a43f75 blog: post for release 0.7 2016-06-16 10:03:05 +02:00
Eberhard Graether b4c094e784 docs: Updated documentation to 0.7.0 2016-06-16 10:00:50 +02:00
Eberhard Graether 7227a47b49 build: Changelog for 0.7.0 2016-06-16 09:57:15 +02:00
malte_langkabel 0aa97adb17 data: fixed tutorial includes 2016-06-14 17:21:55 +02:00
malte_langkabel 247be13650 build: updated windows deploy
* added vim plugin directory to package
* changed version number of installer
2016-06-14 16:19:09 +02:00
malte_langkabel 2b93bdc283 src: headless crash
* fixed crash when loading project in headless mode
2016-06-14 16:02:40 +02:00
malte_langkabel 98b13ef24d ui: overlay window base size
* added property in application settings to define a basic width and height that is used when creating new overlay windows.
* fixed crash in tests
2016-06-14 15:27:03 +02:00
Eberhard Graether b7ba10e119 script: Added vim to plugins in Mac bundle 2016-06-14 12:50:15 +02:00
Eberhard Graether 253af27067 ui: changed wording in the UI to indexing instead of analysing 2016-06-14 12:45:13 +02:00
Andreas Stallinger 83e4bcd049 build: vim plugin readme added to linux package
<description>
2016-06-14 12:41:23 +02:00
Andreas Stallinger 2125396665 utility: vim plugin
readme for vim plugin added to ide_plugins
2016-06-14 12:34:43 +02:00
Eberhard Graether 1c0c2e78df data: Cache current file path in PreprocessorCallbacks to avoid lookup for every macro directive 2016-06-14 10:41:41 +02:00
Eberhard Graether b9c0f9ed3e data: Fixed macro expand location was wrong when used within expansion of different file 2016-06-14 00:01:36 +02:00
Eberhard Graether 72a48f997f logic: Avoid reparsing when no project files nothing changed 2016-06-13 23:21:35 +02:00
Eberhard Graether 986f67df8e data: Removed error logs in CxxDeclNameResolver.cpp
bug id = 94
2016-06-13 22:50:02 +02:00
Eberhard Graether 208f2b1158 ui: Changed full text search character to ? and added shortcut CTRL+SHIFT+F 2016-06-13 21:07:14 +02:00
Eberhard Graether b07d03692d logic: Reworked CDB project setup
* added separate step for project name, project location and cdb path
* added description that project stays up-to-date under cdb path picker.
* added include and framework paths to advanced settings
* disregard source extensions for cdb projects

bug id = 70
2016-06-13 16:43:37 +02:00
Eberhard Graether aae388d8ee logic: Check compilation database path before refreshing 2016-06-12 11:21:18 +02:00
Eberhard Graether b57171552f ui: Added download link to start screen 2016-06-12 10:12:27 +02:00
Eberhard Graether be3ba0ba23 ui: Added status messages for fulltext search 2016-06-12 09:35:11 +02:00
Eberhard Graether 19e26268cf build: Added Qt gif plugin to fix loader gif in release build not working 2016-06-11 04:14:10 +02:00
Eberhard Graether 77080464d7 data: Analyze all types of macro usage 2016-06-11 03:46:44 +02:00
Eberhard Graether 594bb41a6f logic: Fixed app can't find user data after parsing CDB because working directory changed 2016-06-11 03:09:04 +02:00
Eberhard Graether c5af4ed4e5 data: Fixed files being consumed by multiple threads 2016-06-11 02:25:19 +02:00
Eberhard Graether 6821fd1c9a data: Fixed macro expands not saved within macro expands 2016-06-10 22:24:14 +02:00
Eberhard Graether 7e3b2622ec src: miscellaneous bug fixes for upcoming release
* only randomize parsing order of source files for multithreaded indexing
* fixed overview not displayed when switching projects due to MessageScrollCode being dispatched
* avoid adding duplicate TokenLocations that causes highlighting to break in QtCodeArea
* clear all controllers when switching project
* maximize unindexed file when clicking title instead of activating it
2016-06-09 12:30:00 +02:00
Eberhard Graether 5173400b8d logic: Showing annotations in fulltext search results
* new LocationType for errors
* refactored CodeController
* cache active locations in CodeController for later manipulations
2016-06-08 20:33:34 +02:00
Eberhard Graether c6fa1f0969 ui: Defined colors for fulltext search and fulltext code highlights 2016-06-07 15:10:09 +02:00
Eberhard Graether b10c55e7f9 src: Added logic and UI for excluding files and directories from analysis
bug id = 68, 47
2016-06-07 10:46:36 +02:00
Andreas Stallinger 6edcd77eb2 logic: fulltextsearch with suffixarray
* delete test.sqlite in storagetestsuite in desstructor
* remove new and delete from suffixarray
* case sensitive fts
* fixed fulltext results annotated like errors
* lazy suffix array building
* fulltextsearch folder added
* go back too branch without _publish
* suffixarray working
* logic: Improved code view performance
2016-06-07 08:49:34 +02:00
Eberhard Graether 53120cf270 ui: fixed autocompletion list highlights wrong for large indices 2016-06-06 15:40:46 +02:00
Eberhard Graether 468e55f078 ui: Repaint graph view after animation to remove artifacts
bug id = 75
2016-05-31 16:44:24 +02:00
Eberhard Graether ab43d309cb data: optimize memory of sqlite database
* use sqlite "VACUUM" after analysis to reduce memory size
* only add filename to name of local symbol
2016-05-31 15:49:12 +02:00
Eberhard Graether da01855b68 ui: Fixed edge name showing when undoing and redoing 2016-05-31 14:15:50 +02:00
Eberhard Graether 2660465b31 ui: Fixed derived bundle layouted to wrong bucket 2016-05-31 14:02:30 +02:00
Eberhard Graether dfcb9214f4 build: Fixed broken code view style due to app changing working directory while analysing from compilation database 2016-05-31 13:17:36 +02:00
Eberhard Graether d6e2c46420 data: Catch sqlite database close exception that happens sometimes 2016-05-31 12:34:07 +02:00
Eberhard Graether 8222729bb9 logic: Removed undo step for graph and code view manipulations
* graph node moving
* graph node expanding
* code file expanding
* scope expanding
2016-05-31 12:12:05 +02:00
Eberhard Graether 3f032ea822 data: Fixed macro definition not connected to file 2016-05-30 17:06:35 +02:00
Eberhard Graether 5a6e042c8f logic: Removed ActivationTranslator and show old token names in search field 2016-05-30 16:00:55 +02:00
Eberhard Graether 5bb6902cdf src: remove unused stuff
* PersistenStorage::removeUnusedNames
* Dictionary
* DictionaryTestSuite
2016-05-30 14:23:50 +02:00
Eberhard Graether 71cf6bb5f4 logic: randomize source file parsing order to reduce header file double parsing
saves 20% parsing time for Coati
2016-05-30 12:21:39 +02:00
malte_langkabel f02169b08e data: more compiled statements
* added some more statement compilations regarding dangerous names.
2016-05-27 17:20:33 +02:00
Andreas Stallinger 4b734a05f9 utility: Sublime Plugin, import idna encoding
* include fileinfo in fileregister instead of include (for unordered_map)
* sublimeplugin import idna encoading
2016-05-27 12:26:52 +02:00
Eberhard Graether 6165d2fffa ui: Fixed edge drawn wrong when leaving from child nod of smaller node 2016-05-27 12:06:16 +02:00
Eberhard Graether 4e08d86602 logic: Fixed base and derived classes not correctly at top or bottom
Prioritize inheritance and override over all other edges.
2016-05-23 15:58:31 +02:00
malte_langkabel d80a123a5a logic: PARSING files are UNPARSED
* changed ***FileIsUnparsed in FileRegister to disregard files that are currently parsing.
* made Cach more generic by adding the option of providing a custom hasher
2016-05-23 14:58:48 +02:00
Eberhard Graether badad741b0 logic: Fixed slow aggregation click and nodes not staying expanded 2016-05-21 04:44:31 +02:00
Eberhard Graether 5d2a476813 logic: Improved graph and code view performance
* added sql index for component_access
* improved policy for expanded code files
* reduced amount of initially expanded code files
* faster DummyEdge creation
* faster DummyNode search by token id
* switched GraphController DummyNodes and DummyEdges to shared_ptr for memory safety
2016-05-21 00:01:46 +02:00
malte_langkabel 4a6f8cf420 src: crash fixes
* fixed crash when snippet has no code.
* fixed crash when saving a filenode with special characters in its name
* fixed crash when aborting the parsing
2016-05-20 13:52:37 +02:00
Eberhard Graether 946be38fa2 utility: Fixed FilePath::contains 2016-05-20 12:52:37 +02:00
Eberhard Graether 86d1ff2905 logic: Changed include files being analyzed solely by path
* removed header extensions
* added source extensions to source path setup screen
* added caching to hasFilePath check
* don't show header list in CDB setup
* removed TestSettings.xml
2016-05-19 21:47:09 +02:00
Manuel Dobusch 5295267513 ui: generic solution parser
completed first version of generic solution parsers
2016-05-18 16:50:26 +02:00
Manuel Dobusch 2f25279662 logic: vs solution parsing fix
Fixed issue with vs internal macros
2016-05-18 14:19:41 +02:00
Eberhard Graether e943ef149e ui: Added more settings to the preferences
Added font face, font size, tab width, analysis threads
2016-05-18 11:15:28 +02:00
malte_langkabel e40459e71d src: storage refactoring
* used the getFirst/getAll template methods throughout the SqliteStorage.
* renamed LambdaTask to TaskLambda to match our naming convention.
2016-05-17 17:09:18 +02:00
malte_langkabel cb9dde6641 logic: fix local symbols in lambda
* fixed the isImplicit method of the ASTVisitor to use the parent context to determine if a lambda record is implicit.
2016-05-17 16:30:26 +02:00
Eberhard Graether 4097493181 ui: Sort snippets to always show definition on top 2016-05-17 15:26:45 +02:00
Eberhard Graether 9f80bcbcb7 ui: Fixed nodes not sorted when expanding in overview 2016-05-17 14:47:36 +02:00
Eberhard Graether 79f788db2e ui: sort buckets in graph layout alphabetically and put bundles at end 2016-05-17 14:28:22 +02:00
malte_langkabel 67e4d84631 logic: indexer count and fixes
* added option to define the amount of parallel indexers in the appsettings
* fixed unparsed files query in ASTVisitor
* fixed: to update a node's type in the storage the node does not have to be defined anymore
2016-05-13 16:30:16 +02:00
Eberhard Graether 7bb40f2630 logic: Simplified node bundling by collecting relevant data upfront 2016-05-13 14:17:20 +02:00
malte_langkabel c61efbbcde logic: multithreaded parsing
* modified the TaskParseCxx to be able to run multiple times in parallel
* made FileRegister threadsafe and changed a lot of its mechanisms
* added TaskGroupParallel that runs all children in parallel
* added TaskParseWrapper that acts as a decorator to execute some code before and after parsing.
* implemented task setup in project with 4 parsing threads
* removed SimpleTask as it was only used as interface for the LambdaTask
2016-05-13 13:23:54 +02:00
Eberhard Graether 245cafdc7b logic: Improved code view performance
* fixed bottleneck in TokenLocationCollection::findLocationFile()
* cache file ids and paths in PersistenStorage
2016-05-12 22:50:14 +02:00
malte_langkabel 6a576bccc9 src: storage refactoring
* renamed Storage to PersistentStorage
* added Storage as baseclass that implements data injection
* cleaned ParserClient interface
* added default constructors for storage types
* cleaned SqlteStorage by implementing the private getAll methods as template specializations
* added CXX flags to CMakeLists (this is needed for sqlite with visual studio)
* removed TestStorage.h/.cpp since these files were not used anymore.
2016-05-11 13:23:31 +02:00
Andreas Stallinger 2a73c42a18 ui: Colorscheme update for Fulltextsearch 2016-05-10 15:34:06 +02:00
Eberhard Graether 9148a4fafb ui: Fixed file button in code file title bar not visible 2016-05-10 14:25:39 +02:00
Eberhard Graether c4ef18fb6d web: Added jekyll blog with hpstr theme and first post for release 0.6
The README contains the commands for building the blog in all different configurations.
2016-05-10 14:10:21 +02:00
Andreas Stallinger e775ae1ecd logic: Fulltextsearch
* fulltextsearch enabled in sqlite
* fulltextsearch start search with @
* codeview performance improved
* strip sRGB profile from png files to get rid of libpng warning at runtime
2016-05-10 11:10:13 +02:00
malte_langkabel 30faa7e52f ui: fix codeview scrollbar and search crash
* fixed size policies of codeview elements to prevent the codeview from having a global scrollbar
* fixed crash in sorting of search results
* removed debug log when panning a codesnippet
2016-05-04 18:38:53 +02:00
malte_langkabel 75ced4b775 build: update to clang 3.8
* removed unsupported method from ASTVisitor after updating to clang 3.8
2016-05-03 15:59:59 +02:00
malte_langkabel 8ef6d77c50 web: documentation updates 2016-04-27 15:14:48 +02:00
Andreas Stallinger bdf713f078 documentation: Use Bear to generate compilation database 2016-04-27 14:58:57 +02:00
Eberhard Graether 999522ca20 docs: updated changelog and documentation 2016-04-27 12:15:03 +02:00
malte_langkabel 000938cf8c build: installer fix
<description>
2016-04-26 18:50:55 +02:00
Eberhard Graether 3ef9db3a84 ui: removed us of utf8 circle due to Linux issues
* Use dot.png in status bar again
* use * for out-dated files
2016-04-26 18:36:50 +02:00
Eberhard Graether 3d2d434125 ui: Added cancel button to enter license window 2016-04-26 18:28:57 +02:00
malte_langkabel 9a92422984 ui: fixed error circle for windows
<description>
2016-04-26 17:36:14 +02:00
Eberhard Graether 32dc545a60 ui: Added welcome message to trial 2016-04-26 17:33:47 +02:00
malte_langkabel bfb6b458b3 build: windows version number updates
* updated version number of windows installers for app and trial
* updated visual studio plugin version number and plugin meta information
2016-04-26 17:23:38 +02:00
Eberhard Graether fd905f76e5 ui: Updates for release
* updated color scheme highlight colors
* fixed highlight color resetting
* prevent project file being save with no changes
* fixed MessageListener crash due to alive flag being set too late
* new edit project icon
2016-04-26 16:40:09 +02:00
malte_langkabel 279f7410d3 build: optional start menu shortcut on windows 2016-04-26 14:28:35 +02:00
malte_langkabel 4063afb3b0 ui: codeview fixes
* fixed file out of date icon to be displayed correctly on windows
* added tooltip for edit project button when codeview is in overview state
2016-04-26 12:21:09 +02:00
malte_langkabel 038991ce39 ui: linux high dpi fix
* disabled qt high dpi auto scaling on every platform but windows since it doesn't do anything on mac and screws up everything on linux.
2016-04-26 10:30:35 +02:00
Andreas Stallinger c3a148833b src: string replace fix in filepath 2016-04-26 08:51:46 +02:00
Eberhard Graether f9aed67776 src: Various fixes from testing
* fixed deleted project could still be selected in the recent project menu
* fixed project file not loaded when declining for reload
* fixed main in tutorial description not clickable
* fixed clang warnings
* fixed commands not showing up in autocompletion
* fixed classes were expanded when activating aggregation
* fixed crash when messagelisteners tried to unregister after messagequeue was destructed
2016-04-25 17:27:20 +02:00
malte_langkabel e17c42b2ef ui: fixed show files in project settings
* FilePath::relativeTo(...) did not return correct results for non-canonical paths (for a base path containing "/foo/.." it would prepend "../" two times instead of omitting it).
2016-04-25 16:45:29 +02:00
malte_langkabel 932ef67fc7 build: deploy edit icon on windows
* added edit icon to windows setup projects.
2016-04-25 15:41:39 +02:00
malte_langkabel e86479be20 data: implicit local symbol fix
* prevented recording of local symbols that are part of implicit code (like the parameter of an implicit copy constructor).
2016-04-25 15:32:57 +02:00
malte_langkabel 4b4d2157eb build: windows deploy fixes
* added home button icon to windows installer projects
* changed deploy script to build the coati dbs in headless mode
2016-04-25 13:30:41 +02:00
Eberhard Graether 69925917bc ui: Added edit project button to stats in overview 2016-04-25 12:39:10 +02:00
malte_langkabel 55660563c8 ui: fixed panning in code
* fixed bug where panning stopped when hovering the line number area in the code view.
* when relasing the mouse button on a clickable code location after panning the location is not activated.
2016-04-25 10:29:55 +02:00
Eberhard Graether 6bca5d2964 ui: Removed simple setup as distinct step from project setup and moved it to include paths 2016-04-24 23:58:48 +02:00
Eberhard Graether 6be207a68a logic: Ask user before reparsing the project
While the message box with the question is visible the ui is blocked. A message appears when:
* when project was edited
* when preferences were edited
* when project file has more recent changes than db
* when db has a different version than Coati
2016-04-24 22:47:39 +02:00
Eberhard Graether a6e57a6564 logic: Show error message when license expired
* moved all license checking logic to LicenseChecker
* create LicenseChecker instance in app
* Notify MainView with MessageForceEnterLicense
2016-04-22 13:58:13 +02:00
malte_langkabel 73973cb4a3 logic: headless license check
* added license check when running coati in headless more.
2016-04-22 13:45:56 +02:00
malte_langkabel 3e90b62c82 build: qt dll update
* updated qt dlls to our current version of qt (before the dlls of the qt 5.6 beta release have been used).
2016-04-22 11:03:49 +02:00
Eberhard Graether 1b23a44f20 logic: Fixed bundling of referencing types 2016-04-22 00:09:43 +02:00
Eberhard Graether 780530ba3c ui: Show undefined nodes when activating namespace 2016-04-21 23:25:07 +02:00
Eberhard Graether 96ec7e9fa3 build: updated Mac bundle script to Qt 5.6 2016-04-21 23:14:38 +02:00
malte_langkabel 013d528c6b web: added local variables to documentation 2016-04-21 16:29:21 +02:00
Eberhard Graether 526f966356 ui: Fixed path checking in project setup wizzard 2016-04-21 16:11:00 +02:00
malte_langkabel b5bcabb494 ui: qt high dpi scaling
* Enabled automatic scaling for high dpi systems that has been introduced with qt 5.6. This is only a temporary solution. We should change the ui code to use only em scales instead of pixels.
2016-04-21 15:41:57 +02:00
Eberhard Graether 3fe3bcb25d ui: Improved style of error label in status bar
* use utf8 circle instead of dot.png
* underline on hover
2016-04-21 14:47:58 +02:00
Eberhard Graether 2417d27069 ui: Show circle next to file that are out of date 2016-04-21 14:29:10 +02:00
Eberhard Graether 5c52bc6060 ui: Removed Code Blocks project type button 2016-04-21 13:31:45 +02:00
malte_langkabel 19d91da108 build: more dlls for windows installer
* manually added some dlls that may be missing on some windows systems.
2016-04-21 13:18:31 +02:00
malte_langkabel 4ec89e71ca src: code refactoring
* added SymbolType that can be used by ASTVisitor and ParserClient
* reordered some of the ParserClient's methods.
* removed return type of ParserClient methods.
2016-04-21 12:26:49 +02:00
Eberhard Graether 36d17123f3 data: Added sql index for local symbol names to speed up analysis 2016-04-21 11:00:08 +02:00
Eberhard Graether 40144bbcb9 logic: Retrieving StorageNodes for Autocompletion and FileInfos for modification time at once
Had only a small impact on performance unfortunately.
2016-04-20 23:39:21 +02:00
Eberhard Graether 03675e1658 logic: Fixed declaration locations sometimes not visible 2016-04-20 21:41:26 +02:00
malte_langkabel 1bf721588b build: windows installer dlls
* removed redistributable as prerequisit from installer
* added merge module for these dlls to the installer
* added "my_next_step.h" for the tutorial project to the installer
* renamed visual studio plugin
* updated deploy_windows script to use vs14 to build the installers
2016-04-20 18:18:10 +02:00
Eberhard Graether c380854b34 utility: removed unused flag :isFromSystem from MessageActivateNodes/Tokens 2016-04-20 16:34:21 +02:00
Eberhard Graether 3ee5f261d6 utility: Fixed utility::append for vector was actually prepending 2016-04-20 16:28:29 +02:00
Eberhard Graether 1a843db3b7 logic: Tweaked autocompletions results
* mix command and token results
* tweaked scoring
* added scoring for matched letters after non letters like _
* increased performance by removing separate sort step using single results vector in recursive search
* made sorting alphabetical: A < a < B < b
2016-04-20 16:00:26 +02:00
malte_langkabel ea4acef2de logic: codeview activation policy
* changed activation policy of codeview to activate implicit nodes only when no explicit or undefined nodes are found for the clicked code location.
2016-04-20 13:24:03 +02:00
Eberhard Graether ce5c3e8626 ui: Added timer stopper to QtGraphicsView to stop movement if keyup event not registered 2016-04-19 23:13:41 +02:00
Eberhard Graether f19cdc3bb9 ui: Fixed text color resetting in code view 2016-04-19 22:49:49 +02:00
malte_langkabel 6069dfedc1 src: fixed redo crash
* fixed crash when redoing the last action on redostack
2016-04-19 16:40:49 +02:00
Eberhard Graether 661dbd844c ui: Show undefined child nodes in graph
So far pure virtual methods where not shown when activating the interface class.
2016-04-19 16:37:44 +02:00
Eberhard Graether deccf2734c utility: Fixed FilePath::canonical() still used uninitialized m_exists 2016-04-19 14:53:50 +02:00
Eberhard Graether 5cb06c9bb0 data: Fixed ASTVisitor to not use Node::NodeType 2016-04-19 14:52:08 +02:00
malte_langkabel 29ef349f61 data: recording function pointers
* added recording of references to the ASTVisitor.
* refactored reference recording in ASTVisitor.
* merged all the onXxxUsageParsed methods of the ParserClient.
2016-04-19 13:32:09 +02:00
Eberhard Graether 5d71536bb1 logic: Fixed sorting of search results and crash in undo redo controller 2016-04-19 12:38:03 +02:00
Eberhard Graether 7cd38f8e56 logic: Fixed FilePath to not expand environment variables in constructor 2016-04-19 00:13:02 +02:00
Eberhard Graether a57f24b2b2 logic: rewrote UndoRedoController to differentiate 3 types of priority
ORDER_ACTIVATE for messages that change active symbols
ORDER_ADAPT for graph and code view expanding and collapsing
ORDER_VIEW for scrolling and local symbol activation
2016-04-18 22:38:20 +02:00
malte_langkabel c7940eb34f ui: sorting search results
* search results are sorted by: score > length > name
* fixed crash that occurred when trying to get a node by id with id == 0
2016-04-18 14:05:27 +02:00
Eberhard Graether 325bc6ac83 ui: Text color for highlights in code view
* Deactivate local symbols by clicking into void
* Refactored QtHightlighter to only highlight once
* Removed undo for local symbol activation
2016-04-18 12:34:35 +02:00
malte_langkabel 985be86da0 ui: tutorial update
* mentioned local symbols in tutorial
* mentioned home button in tutorial
2016-04-18 11:50:44 +02:00
Andreas Stallinger 298fd6cf3e ui: Enterlicense quit button
Quit button only for forced enterlicensewindow
2016-04-18 11:08:44 +02:00
malte_langkabel 530e20ede6 logic: added include path detector for visual studio 2016-04-15 14:06:17 +02:00
malte_langkabel 3cb15f1754 build: script fixes
* regex removed in hook since it was not working on windows.
* fixed method for getting the script's path for windows. using this in setup and clean script.
* fixed missing include in cmakelists
2016-04-15 13:57:46 +02:00
Eberhard Graether e68177b634 ui: Fixed backspace not working when focus is on graph 2016-04-15 11:16:38 +02:00
Andreas Stallinger 637cbf88ac fix: handle boost error while recursive directory iteration
handle boostrecursive directory search error
ption>
2016-04-14 16:38:46 +02:00
malte_langkabel 73ee3a27d9 logic: iterated on license checking
- moved LicenseChecker from App to Lib project
- added MessageDispatchWhenLicenseValid. This message takes another message as an argument which is dispatched once the LicenseChecher confirms the current license key or (if the key is invalid) once the user entered a valid key. This message is used when messages are sent that should not be working when no license key has been entered (LoadProject or ActivateTokenLocation via the IDE communication).
- added MessageShowStartScreen which makes the MainView display this screen. This message is also sent via the MessageDispatchWhenLicenseValid.
- removed startup project from appsettings.
2016-04-14 15:25:40 +02:00
Andreas Stallinger a2cba0b94f logic: enviroment variable handling
* expanding env vars for existsens check
* expand source paths in filemanager
2016-04-14 13:39:48 +02:00
Eberhard Graether 9534ccb454 ui: fixed QtDirectoryListBox not sized correctly when overwriting list 2016-04-14 12:57:13 +02:00
Andreas Stallinger 23fbe6c384 script: move forced test to precommit hook
NOTE: run setup.sh script to update the hooks
* commit message after building and testing
* pushing tags does not run builds and tests
2016-04-14 11:46:53 +02:00
Eberhard Graether bee3961040 logic: Fixed implict children of implicit classes not shown in graph 2016-04-13 14:44:39 +02:00
Eberhard Graether 8d2709a2ad ui: added shortcut and menu item for "To overview" and updated documentation 2016-04-13 13:45:39 +02:00
Eberhard Graether ad8abd9182 ui: Added home button left of search bar to return to overview
bug id = 40
2016-04-13 13:05:02 +02:00
Eberhard Graether fcc39f4a77 ui: Improved user experience of error display
* label errors as errors instead of references in file snippet headers
* show number of fatal errors in file snippet headers as well
* only show the first 10 error snippets open, remaining collapsed
* don't show status message after parsing in red on errors
* don't show stats of parsing when project was only loaded
2016-04-13 12:14:55 +02:00
Andreas Stallinger 4eef42d15c ui: Startscreen Messagebox to delete missing coatiprojectfiles 2016-04-12 14:13:15 +02:00
Eberhard Graether b088ca6adf logic: show subnamespaces as nodes instead of their children 2016-04-12 13:39:42 +02:00
malte_langkabel b9c4bd05cd data: showing local symbols
- added local symbols to storage
- added tests for local symbol parsing
- added MessageActivateLocalSymbols to activate local symbols in code view
- TokenLocations now store their LocationType instead of a plain bool "isScope"
- moved LocationType from TokenLocation to separate file, since it is also used in Annotations now.
- added local_symbol in stylesheet to define a style for hovering and activating these elements
- renamed location to token in stylesheet
2016-04-12 13:28:37 +02:00
Andreas Stallinger a448485b35 build: linux package change to qt5.6 2016-04-12 12:58:06 +02:00
Eberhard Graether 9307d6d855 logic: Refactored namespace activation
* show namespace name in search view when activated
* show namespace definitions in code view when activated
* no children in namespace
* no implicit nodes in overview or namespace
* Show a maximum of 10 open snippets
* Fixed bug causing nodes in GraphView to be stacked at 0,0
2016-04-12 11:59:37 +02:00
Eberhard Graether e8e6b909a8 logic: Fixed referencing of nodes in GraphController::bundleNodesByType 2016-04-12 11:05:29 +02:00
Eberhard Graether 78287dd694 logic: increased performance of bundleEdgesByType for overview 2016-04-08 14:31:46 +02:00
Eberhard Graether ae6cd6e02c logic: don't show implicit or undefined child nodes in graph unless connected
* visit implicit declarations in ASTVisitor
* show implicit and undefined child nodes only when connected
* fixed some bundle edges couldn't be split
* add "implicit" to tooltip
* show undefiend and implicit nodes hatched
2016-04-07 14:16:17 +02:00
malte_langkabel 7a0cd0c8d7 src: project load performance
removed unused fields from StorageStats to improve project loading performance.
2016-04-07 13:18:41 +02:00
malte_langkabel 7bc2f2b548 logic: improved fuzzysearch score calculation 2016-04-06 17:07:13 +02:00
Eberhard Graether 73e77a1baa docu: updated edge aggregation 2016-04-06 11:41:29 +02:00
Eberhard Graether 5e6714d95a ui: Added user interface for auto system header search paths detection
* moved detection files to lib_gui
* added ui to global header search and framework search ui in project wizzard and preferences
* detecting the search paths will add them to the list if not added yet
* only detected compilers are shown in the dropdown list
2016-04-06 11:23:20 +02:00
Eberhard Graether 93f21283f6 ui: improved angled edges and new style of aggregation
* added different routing options for horizontal, vertical or any
* added different pivot options to connect in the middle or at thirds
* changed aggregation to angled edge with thickness logarithmic to weight
* aggregation to pivot at middle and route any direction
* aggregation weight displayed in tooltip
* inheritance to route vertical
2016-04-04 21:05:39 +02:00
Andreas Stallinger 2ffec90c19 ui: startscreen display not existing project
* displays moved or deleted recent projects as disabled button
2016-04-04 20:43:56 +02:00
malte_langkabel f3dc12b0ed logic: search ui performance optimization
* replaced the implementation of the search index. the search index now uses a search-trie. edges have gates that can be used to check if a character can be matched when following the edge.
* SearchMatches now have a text and a list of NameHierarchies that share this node (instead of Ids, so that nodes must be found by names (which makes sure that SearchMatches are still valid after refresh).
* when parsing a project's description the CodeController now looks for NameHierarchies instead of SearchNode names to find ids of linked elements.
2016-04-04 15:39:39 +02:00
Andreas Stallinger ffc00829f0 ui: Bug Tracker in Menu 2016-04-04 14:39:09 +02:00
Andreas Stallinger e5bf177241 utility: Standardheadersearch
Standardheadersearch for clang and gcc
TODO: Visual Studio & Windows Kit bzw SDK
2016-04-04 14:13:32 +02:00
Eberhard Graether 31f366ab8f ui: Increased graph edge drawing performance
* only draw lines within the redrawn rectangle
* cache polygon points
2016-04-01 15:26:44 +02:00
Andreas Stallinger 2be3b541a6 fix: vs detector fix for wrong published headersearch stuff 2016-03-30 17:56:20 +02:00
Andreas Stallinger 03901e8173 logic: Test License is valid on day 0
* License was invalid on expire date
* build script does not start app after failing build
* symlink on linux
2016-03-30 15:49:08 +02:00
Manuel Dobusch fe74dfb7cc logic: vs plugin upgrade
Upgraded plugin project to vs 2015. Can now serve all targets (vs 2012 to 2015) with one binary.
2016-03-30 14:04:47 +02:00
Manuel Dobusch b75dd2abe1 logic: vs compiler flags
Added compiler flags from VS solution and vs compatibility flags.
2016-03-30 13:37:37 +02:00
Eberhard Graether cec370cfff data: Improved graph retrieval to use fixed number of requests 2016-03-30 12:26:19 +02:00
Andreas Stallinger a662424e2b logic: Test License
Test license for x days
License_generator flag -e <days>
2016-03-29 15:37:58 +02:00
Eberhard Graether ac506622b4 src: Fixed template function specialization defined within class definition caused clang error 2016-03-29 12:13:42 +02:00
malte_langkabel 880a199540 ui: changed the display format of the parse duration to "hh:mm:ss" 2016-03-24 10:44:09 +01:00
Manuel Dobusch 82db193c78 logic: solution parsing refactor
Refactored solution parser handling to make it more generic
Also includes new parser (wip)
2016-03-23 17:06:40 +01:00
malte_langkabel bac394381c ui: codeview show fully qualified scope names 2016-03-23 15:44:27 +01:00
malte_langkabel fee1d97604 ui: moved recent projects submenu
* moved the menu entry for "recent projects" to be placed close to "open project"
* replaced enum for MaxRecentProjectsCount in AppSettings by a getter function.
2016-03-23 14:15:30 +01:00
malte_langkabel d1a4bc7b08 src: small code cleanup 2016-03-22 10:14:59 +01:00
malte_langkabel 6743336f03 data: tweaked refresh for performance 2016-03-21 15:29:19 +01:00
malte_langkabel eab703cb0d data: implicit in database
* storing the information if a node is defined implicitly in the database
* the analysis however does not visit implicit nodes directly. Currently they are just recorded when used somewhere in the code. This should be changed once implicit nodes are hidde in the UI.
* removed error logs for unnamed template parameters and function parameters since it is ok when they are anonymous.
2016-03-18 13:33:34 +01:00
Andreas Stallinger f6de07ecf1 build: update botan paths
botan has new paths on linux build, debug - release fix on linux
2016-03-17 13:58:47 +01:00
Eberhard Graether a78e7b85d1 ui: Use update loop in graph panning and zooming for smooth interaction 2016-03-16 15:03:57 +01:00
Eberhard Graether 2d0700cd06 resource: changelog for 0.5.1.21 2016-03-16 14:44:14 +01:00
Eberhard Graether d18b6fb873 build: Fixed compile_commands.json not exportet 2016-03-16 14:42:28 +01:00
Eberhard Graether 3140b6dbb8 src: Fixed command execution for real
<description>
2016-03-15 18:03:42 +01:00
Eberhard Graether 2008d1401a src: Fixed command order at startup 2016-03-15 17:12:04 +01:00
Andreas Stallinger 23f05c003b build: Linux package update
create database with via commandline in packaging
symlink fix in setup
2016-03-15 16:13:43 +01:00
Eberhard Graether 09e3ff6897 ui: Fixed window size to use biggest dimensions of content and preferred 2016-03-15 15:23:19 +01:00
malte_langkabel 0db6f5fb36 build: installer fixes
* changed the windows installer projects to include the new gui resources
2016-03-15 14:04:30 +01:00
malte_langkabel c398302e4d logic: fixed relative project settings paths
* when specifying relative paths in project settings these stay relative when saving and loading them now.
2016-03-15 12:54:44 +01:00
Eberhard Graether ba523111af ui: Tuned graph zooming 2016-03-14 23:42:45 +01:00
Andreas Stallinger 0cc777a892 script: pre push hook - ignore delete remote branch 2016-03-14 17:02:27 +01:00
Eberhard Graether 1032b83a09 Revert "src: removed use of clang::tooling::CompileCommand::Filename"
This reverts commit 5d845961ac.
2016-03-14 15:21:46 +01:00
Manuel Dobusch 52aeae2f6d logic: plugin binary update
Updated all vs plugin binaries to latest version
2016-03-14 15:13:55 +01:00
Eberhard Graether 0dbdf9081e logic: Reparse project of newer version 2016-03-14 14:52:40 +01:00
Eberhard Graether cefaeae1ab resource: Updated documentation and smaller fixes
* updated documentation of: cdb loading, advanced settings, graph view
* removed stats of search index
* added global search paths to cdb summary
2016-03-14 14:45:42 +01:00
malte_langkabel f82da323b3 data: increased project load and codeview performance
* rewrote searchnode to use map
* added local cache for parent node ids when creating the Hierarchy Cache.
* added indices to SqliteStorage to increase code view performance.
2016-03-14 12:32:01 +01:00
Eberhard Graether 53d5fe6a06 ui: Added more movement controls to the graph
* SHIFT + mouse wheel for zooming
* WASD for moving up, right, left, down
* SHIFT + WS for zooming
* zoom anchor is under the mouse

bug id = 54
2016-03-12 00:55:31 +01:00
Eberhard Graether bcb43eccd0 ui: moved contentbased sizing to QtWindow 2016-03-11 22:22:57 +01:00
Eberhard Graether 813cde4d26 ui: adapt window size to contents if bigger than preferred size 2016-03-11 21:50:07 +01:00
Eberhard Graether f6e2821430 utility: turned of logging for scroll and focus messages
These messages added up to about 80% of all logs during use of the UI.
2016-03-11 15:29:13 +01:00
Eberhard Graether 47bf9bb7fa ui: Show loader when loading project and building search index 2016-03-11 15:18:59 +01:00
Eberhard Graether 8c9b9355d5 ui: Fixed expanding file with errors showed all locations as errors 2016-03-11 13:52:24 +01:00
Eberhard Graether a8aaf6950f data: save nodes and edges to Storage in order of parsing 2016-03-11 13:01:59 +01:00
Eberhard Graether f85d5a6024 ui: Fixed crash when opening preferences 2016-03-10 18:48:58 +01:00
malte_langkabel 9a7b818dba data: parser performance optimization for large projects
* moved inserting everything into the database to the end of parsing a file. this reduces many duplicate queries.
* removed ParserClient interface from Storage.
* errors are updated after parsing a file because we only if there are any duplicate errors after merging the new errors into the database.
* renamed field in db
* added fatal column to error db
2016-03-10 18:24:28 +01:00
Eberhard Graether e7c7178057 ui: Only bundle nodes when a single node is active 2016-03-10 13:03:15 +01:00
Eberhard Graether 527418fe2c ui: Fixed escaping and interrupting
* Fixed crash when closing window with ESCAPE
* Fixed interrupt status message not showing when interrupting parsing
2016-03-10 11:47:33 +01:00
Eberhard Graether 66e8be4b4d utility: Disabled ConfigManager warnings 2016-03-10 10:26:58 +01:00
Eberhard Graether 5d845961ac src: removed use of clang::tooling::CompileCommand::Filename 2016-03-09 12:22:39 +01:00
Eberhard Graether 2d1aa6bf8d ui: Added file extension UI to project setup 2016-03-08 15:20:50 +01:00
Eberhard Graether 20fbfa18be ui: Added toggle for advanced settings 2016-03-08 14:40:28 +01:00
Eberhard Graether 8cc8f5d534 logic: Added compilation database project setup
* Added CDB option to project type selection
* show CDB source files in popup
* define header paths separately
* made generic content summary in wizzard and use it everywhere
* fixed file paths not canonical in analysis
* refactored wizzard content paths to use summary instead of subpaths
* refactored files popup to simpler communication with content

bug id = 35
2016-03-08 13:20:37 +01:00
Andreas Stallinger 90c0d15d20 src: move set app path to linux includes 2016-03-08 13:01:00 +01:00
Manuel Dobusch cabdb69956 logic: listening status for communication controller
Added isListening method to ide communication controller
2016-03-07 17:29:20 +01:00
Andreas Stallinger d431161fbb script: test enforced push to master
enforced building and test with a pre-push hook
IMPORTANT: cmake is needed in PATH
2016-03-07 16:58:57 +01:00
Andreas Stallinger fec17e452d utility: Headless Coati
switch from qt to boost commandlineoptions
coati can now parse a coatiproject without gui with commandline flag -d
show all commandline options with flag --hidden
2016-03-07 16:38:53 +01:00
Manuel Dobusch b761db9b22 logic: fix for TaskParseCxx
Adaption for MessageFinishedParsing change
2016-03-07 16:25:08 +01:00
Eberhard Graether 1603df1a43 ui: Added delay when changing fontsize via mouse wheel
bug id = 44
2016-03-07 15:23:34 +01:00
malte_langkabel 6d7a1faaa4 src: code cleanup
* removed unused code: ParseFunction, ParseVariable and ParseTypeUsage. All this is handled using NameHierarchies now.
* Moved the getErrorCount method from ParserClient to the StorageAccess
* MessageFinishedParsing doesn't know the error count anymore.
* StatusBarController now has a StorageAccess to fetch the error count when needed.
2016-03-07 10:59:39 +01:00
wrongway88 5cdaafc6de logic: vs plugin fixes
Can now deal with single projects and solutions with non-c/c++ projects

bug id = 32
2016-03-05 18:18:54 +01:00
Eberhard Graether c9f1f65ba4 data: Fixed type references in parsed headers saved again 2016-03-04 12:46:44 +01:00
malte_langkabel 731c88dabd data: template argument fix
* improved context detection of template parameters.
* fixed case where declaration and definition of template function has 2 nodes in graph.
* removed code duplications: replaced individual cache classes in ASTVisitor with template based
2016-03-04 11:13:13 +01:00
Andreas Stallinger 8f1326e02a build: clang warning cleanup
* unused member in undoredocontroller
* int - size_t comparion
* virtual destructor ASTVisitor added
* braces when && and || in same if
* 1 warning left: isNamedDeclUnnamed in ASTVisitor is unused
2016-03-03 20:16:20 +01:00
Manuel Dobusch 8b4b4bb027 ui: Prevent network message handling without valid licence
Message by the ide com. controller are now caught by the licence checker to prevent them from causing trouble when waiting for the licence.

bug id = 45
2016-03-02 18:50:20 +01:00
Manuel Dobusch 612e12b35f ui: font size limits
Introduced font size limits and prevent ui refresh beyond those limits. Should prevent UI from freezing up with unlocked mouse wheel.
2016-03-02 16:22:16 +01:00
Eberhard Graether 8fa1763402 docs: changed path to static app data on Windows 2016-03-02 16:16:48 +01:00
Eberhard Graether 346a6f706d ui: Added ui for compiler flags to project setup summary
bug id = 37
2016-03-02 11:59:55 +01:00
malte_langkabel 2ebfbbf88e ui: display fatal errors
* added ErrorCountInfo to incorporate reporting of fatal errors during code analysis.
2016-03-02 10:53:04 +01:00
Eberhard Graether 4425b39ea1 ui: center windows on top of main window
* justify windows in middle of main window
* fixed window resizing
* add window displacement automatic with logo
2016-03-02 10:36:50 +01:00
Eberhard Graether f3534ac6a8 ui: Refactored windows to QtWindow base class
* renamed QtSettingsWindow to QtWindow
* moved functionality from QtProjectWizzardWindow to QtWindow
* use common createWindow method in QtMainWindow
2016-03-01 17:53:58 +01:00
Manuel Dobusch eb831376ce logic: Access right hotfix
Catch exception when coati tries to write to a database without sufficient rights. Display error message asking for restart with admin rights

bug id = 43
2016-02-29 18:07:14 +01:00
Andreas Stallinger b3ac0532cc utility: ringlogging fix, delete when switching log files 2016-02-26 12:31:38 +01:00
Eberhard Graether 47a0dd69a4 resources: changelog 0.5.0.4 2016-02-25 16:45:10 +01:00
Eberhard Graether c35419e281 utility: Fixed file logger using wrong directory for first log file 2016-02-25 14:40:22 +01:00
malte_langkabel bf0d99c9ba build: changed installer version 2016-02-25 12:53:32 +01:00
wrongway88 cfceb21e7e logic: vs solution parsing hotfix
Fixed bugged path building when project items have absolute paths
Based on, but not a fix for UrHo3D parsing crash

bug id = 30
2016-02-25 12:40:18 +01:00
Eberhard Graether e7a2d5a724 logic: Fixed global search paths not saved 2016-02-25 10:25:25 +01:00
Eberhard Graether 2b7f0bc506 ui: disable refresh buttons in trial project 2016-02-25 09:37:28 +01:00
malte_langkabel 08e6f47311 build: Fixed version number for Windows deploy script 2016-02-24 19:46:39 +01:00
Eberhard Graether c65e545ab4 build: Fixed version number for Mac bundle 2016-02-24 15:26:35 +01:00
Andreas Stallinger 389c7881c3 build: linuxbuild public beta 2016-02-24 13:39:22 +01:00
malte_langkabel c5b96a63ba build: windows setup script fix
* removed headless coati usage
* added automatic installer editing. YEAH!
2016-02-24 12:58:14 +01:00
Eberhard Graether 39e7789acd Revert "utility: headless parsing"
This reverts commit 76697d8b6e.
2016-02-24 11:17:25 +01:00
malte_langkabel 4dabe31776 build: windows deploy
* implemented a new deploy script for windows
* created a new setup project for the Coati Trail
2016-02-24 10:52:24 +01:00
Eberhard Graether 64ffafffa8 ui: picking folders and files only works on Mac OS 2016-02-24 10:40:00 +01:00
malte_langkabel 66f7fe9550 ui: fixed some spacings
* enter license screen
* project wizard
2016-02-24 10:34:01 +01:00
Eberhard Graether d34aea17b6 ui: Don't show that files are outdated in trial 2016-02-24 01:36:08 +01:00
Eberhard Graether b07e562a6e logic: Check if color scheme path still exists 2016-02-24 00:30:16 +01:00
Eberhard Graether 33ab897c91 ui: fixed squashed Combobox and pick both files and directories in QtDirectoryListBox 2016-02-24 00:02:17 +01:00
Eberhard Graether 7845987f8f build: added EULA.rtf to MacOS bundle
<description>
2016-02-23 19:58:14 +01:00
malte_langkabel 4c70c867d3 ui: changed the EULA 2016-02-23 19:27:56 +01:00
Eberhard Graether 0291ec9e92 web: updated documentation to cover setup wizzard 2016-02-23 19:08:40 +01:00
Andreas Stallinger 76697d8b6e utility: headless parsing
* resolve merge conflict
   * rpath for dev
   * generate a coatidb with a coatiproject
   * build script change to cmake --build
2016-02-23 18:59:17 +01:00
Eberhard Graether 5b7e958ea7 build: added plist for trial
<description>
2016-02-23 18:45:12 +01:00
Eberhard Graether 391054c0ac build: Fixes for trial release on MacOS 2016-02-23 18:30:34 +01:00
malte_langkabel d8cd3a6f2f ui: fixed linebreaks in license key box 2016-02-23 17:39:19 +01:00
Manuel Dobusch 8a2c4b4e9b logic: vs solution parsing fix
Fixed vs solution parsing to be able to handle some more variations of vs solution layouts...
2016-02-23 16:49:02 +01:00
Eberhard Graether f0178fb3c6 ui: removed compilation database option as project type 2016-02-23 16:04:46 +01:00
Eberhard Graether 8633201350 ui: Added descriptions to project type selection in wizzard 2016-02-23 14:39:43 +01:00
Eberhard Graether 32dc58b0c0 ui: Added compilation database loading via project wizzard 2016-02-23 12:55:17 +01:00
malte_langkabel 3cf3a3f575 ui: adjusted start screen width 2016-02-23 11:01:56 +01:00
Andreas Stallinger 2f94fed439 fix: undo last main.cpp changes
revert last main.cpp changes
2016-02-23 10:43:11 +01:00
Andreas Stallinger 0cbf1ad1bb logic: getframeworkpaths to compilationdatabase
* getframeworkpaths added
* typename for iterator in cache added(fix)
2016-02-23 10:38:34 +01:00
Andreas Stallinger a7975b4428 logic: iframework in compilationdatabase
add iframeworks to compilationdatabase headersearchpaths
2016-02-23 09:55:05 +01:00
malte_langkabel efaee022a6 logic: improved codeview performance
* reduced database queries necessary for creating code snippets in the codeview.
2016-02-22 21:23:33 +01:00
Eberhard Graether 43ac76d38c logic: Only activate node when clicking locations of both nodes and edges 2016-02-22 20:51:58 +01:00
Eberhard Graether 95b4ea4a6c ui: diverse improvements before release
* hide build file content
* use small buttons in all windows
* new design for start screen
* fixed design for enter license ui
* added spacing to summary
* brighter icons in wizzard
* added template icon for graph
* smoothing for graph icons
* switched error icon to dot
* fixed error message tooltip immediatly disappearing
* menu item for opening documentation
2016-02-22 20:07:26 +01:00
Andreas Stallinger e5eb7f2f12 utility: ringlogging
ringlogging
default_logs_per_file: 1000
default_log_files:2
2016-02-22 20:02:53 +01:00
malte_langkabel 1928e4beab ui: codeview template specialization
* when activating a template specialization the specialized template class (specialization parent) is not shown in the codeview anymore.
2016-02-22 15:25:56 +01:00
malte_langkabel e054df2e71 logic: search bar duplicates
* When a location is clicked in the code that has more than one TokenLocations pointing to the same element, only one instance of the element is displayed in the search bar.
2016-02-22 14:17:53 +01:00
malte_langkabel fc1a43c1a5 data: fixed indexer coverage
* revised the check if a declaration is implicit. this affects whether or not the reference to the decl should be recorded.
2016-02-22 13:14:48 +01:00
Eberhard Graether 7847d53fbb ui: Properly handle sub window stacks with QtWindowStackElement interface 2016-02-22 09:19:53 +01:00
Eberhard Graether 95b3fe9950 ui: Fixes in project wizzard
* stretch at end of preferences
* space at scrollbar
* default font size
* only refresh project when something changed
* fixed sizing of text fields
* icons fit to font size
* use em base sizes
* added language to project type label
2016-02-20 02:24:26 +01:00
Eberhard Graether 6e460afbfc ui: project wizzard design
* switched to QGridLayout for wizzard content layouting
* distinguish scrollable windows based on content
* content can define window size
* removed QtApplicationSettingsScreen, now done via QtProjectWizzardWindow and QtProjectWizzardContentPreferences
* added new project icon
2016-02-19 11:52:46 +01:00
Andreas Stallinger a8f5fd02f1 logic: compilationdatabase parsing
* compilationdatabase cleaned
* add SolutionparserCompliationDatabase
* added cmake_build_type_init as release for better autocomplition on linux
* external source handling for different linux versions
* clean script remove windows symbolic links only on windows
* linux external lib handling for different build easier
2016-02-18 17:20:27 +01:00
malte_langkabel 59232bda69 build: installer fix
* added missing folders/data to application dir
* installer now looks for the exe in the Release folder when packaging
2016-02-18 13:11:11 +01:00
wrongway88 ccd42f64be build: updated windows setup project
Removed some superfluous files
2016-02-17 18:22:33 +01:00
Eberhard Graether 5a22875a72 ui: Added links to about window 2016-02-17 15:24:38 +01:00
Eberhard Graether a4c6cebce6 ui: Extended wizzard with simple setup and vs solution parsing
* removed blurry coati background
* added language selection to project type window
* search for headers in project paths option as part of simple setup
* show popup containing list of all analyzed symbols
* show build file path in summary and allow refreshing
* only force refresh after editing project and something changed
2016-02-17 13:32:21 +01:00
malte_langkabel b7bb1349f2 misc: expanded Readme.md
* added instructions for tagging to Readme.md
2016-02-17 12:32:18 +01:00
malte_langkabel 7f33ab37be ui: display of project name
* Window title now reads "Coati - Project name".
* Removed file endings in the recent projects list.
* Changed the first line of the project summary to be "Project: Project name" instead of just "Project name".
2016-02-17 12:20:36 +01:00
malte_langkabel 42513fe102 data: revised indexing
* increased performance. coati is now 1.55 times as fast as at version 0.4
* integrated sourceweb parsing code
* removed astbodyvisitor
* NameHierarchy now store signatures in a new format
* storage does not allow to re-set the type of a node, once it is marked as "defined".
* made onTemplateRecordSpecParsed just create the edge, not the node.
* removed distinction between template specialitzations for functions and classes
2016-02-17 10:45:35 +01:00
wrongway88 9047d602ff logic: windows app path hotfix
windows app path hotfix
2016-02-16 19:54:17 +01:00
malte_langkabel bfb0a20636 build: fix symbolic links
* expanded setup and clean scripts to create/delete symbolic links for the new user folder.
2016-02-16 18:30:42 +01:00
malte_langkabel 70a9394d94 data: ignore MS-style ASM errors
* ignoring a certain error message for MS-style inline assemblies that is thrown by clang.
2016-02-16 17:43:40 +01:00
Eberhard Graether 19e03aeec7 src: Fixed wrong changes in main.cpp 2016-02-16 17:30:48 +01:00
Manuel Dobusch 835b6718ff build: deployment update
Updated deployment project according to data folder update
2016-02-16 16:56:15 +01:00
Eberhard Graether 86cf1ee62d build: split user and data folder, moving user data to Application Support on Mac 2016-02-16 16:44:42 +01:00
Eberhard Graether 89b8d51ab8 ui: Fixed about window size for Mac OS 2016-02-16 16:21:48 +01:00
malte_langkabel 2effa950f7 ui: redesigned about window
* adjusted layout of about window to match the design concept.
* replaced main font to be Roboto.
2016-02-16 16:10:22 +01:00
malte_langkabel b3df8fb825 ui: tutorial adjustments
* adjusted the start of the tutorial to work with the "overview" filter.
* fixes some spelling errors in the tutorial.
* tabs can be encoded by "\\t" in the project description.
2016-02-16 13:25:03 +01:00
Manuel Dobusch d04cf6316b logic: vs plugin update
Changed some exception handling behavious in network utility
2016-02-15 18:50:08 +01:00
Manuel Dobusch d31557cb66 Logic: VS Solution Parsing update
Updated vs solution parsing, fixed some issues. Also fixed some issues with corresponding unit tests.
2016-02-15 17:55:01 +01:00
malte_langkabel 1113544b6b src: fixed canonical paths
* reimplemented FilePath::canonical method to work for symbolic links.
2016-02-15 10:49:24 +01:00
malte_langkabel b7c20d4b79 build: updated qt dlls for windows
* updated qt dlls to QT version 5.6 for msvc 14
2016-02-15 09:00:01 +01:00
Eberhard Graether 56830f3ddc logic: Fixed aggregation click not showing source locations 2016-02-14 16:42:54 +01:00
Eberhard Graether 2d48f0a663 ui: Rewrote project setup to wizzard
* QtProjectWizzard handles window managment logic of project setup
* QtProjectWizzardWindow is used in every step and displays QtProjectWizzardContent
* QtProjectWizzardContent is the base class for all differnt content types
* Removed Singleton from ProjectSettings
* ProjectSettings are created by wizzard and QtProjectWizzardContent can access and load
* added project type selection at start of wizzard
* added summary at end of wizzard
* show global search paths in setup and summary
* fixed layout problems after font switch
* fixed scrolling and resizing of QtDirectoryListBox
* separated QtLocationPicker to own class
2016-02-14 15:42:30 +01:00
Andreas Stallinger 50a94bf108 logic: Application moving protection, licensegenerator for other licensetypes
* Licensegenerator can now generate any type of license via commandline argument
* When moving the appliction, the user needs to enter the License again
2016-02-10 12:52:00 +01:00
Manuel Dobusch 082b94ac8d logic: code view asset fix
Fixed asset paths for code view
2016-02-09 14:05:25 +01:00
Manuel Dobusch e13eaa85da logic: visual studio solution parsing
Can now parse visual studio solutions. VS Plugin can send a command, parsing is implemented in Coati.
Some minor changes: added project file icon, added language check to vs plugin
2016-02-08 15:58:25 +01:00
Eberhard Graether 29149f313a logic: Added namespaces to overview and fixed namespace activation 2016-02-08 03:39:08 +01:00
Eberhard Graether d6c03ffb02 logic: Don't show line numbers for summary 2016-02-08 01:24:28 +01:00
Eberhard Graether d8a8bbee06 utility: Fixed log file names not sorted chronologically 2016-02-04 16:33:43 +01:00
Eberhard Graether acce0477b4 ui: improved graph view layouting and bundling
* move top and bottom layout buckets closer to center buckets
* split undefined bundles into users and usees
* acknowledge zoom for graph view size in layouting
* bundle all referencing nodes
* fixed bundle node and bundle edge count
2016-02-04 16:15:01 +01:00
Eberhard Graether 5c49eaf293 ui: Fixed aggregation click and activation of already active symbol 2016-02-03 15:23:24 +01:00
Eberhard Graether b40e49b633 ui: Display scope name at bottom of snippet if available
* Show scope name at bottom looking like top one
* Refactored CodeSnippetParams out of CodeView and use them everywhere
* Fixed border radius clipping problem at bottom of file by defining a small padding
* Scroll to line number when inserting a scope
2016-02-03 13:54:46 +01:00
Eberhard Graether e7224e0c46 ui: switched fonts to FiraSans 2016-02-02 13:59:14 +01:00
Eberhard Graether 3cbafa6456 logic: file associations for Mac and opening project files via Mac OS
* hide start screen when opening with project file
* added project icon file to bundle and file type association to plist
* listen for file open events from double click or drag and drop
* fixed crashes in window handling
2016-02-02 13:20:05 +01:00
Eberhard Graether 29a70b8f70 ui: Fixed gui_path for enter license ui css files 2016-02-01 15:43:04 +01:00
Eberhard Graether 5aa1add617 ui: Fixed gui_paths in css subtracted with RessourcePaths::getGuiPath() 2016-02-01 14:14:54 +01:00
Eberhard Graether ead0abfba2 logic: Return to last scroll position in code view on undo
* fixed scrolling on undo
* refactored autoscrolling in code view
* save scroll position of user with MessageScrollCode
2016-01-29 13:08:30 +01:00
Andreas Stallinger 427c94457b build: fix trial build on linux
add dl and pthread libs for trial on linux to get rid off linker error
2016-01-28 15:16:04 +01:00
Eberhard Graether 7bd44a9f45 ui: Clearing error count when parsing starts
* fixed undo showed errors twice when activated from status bar.
2016-01-28 14:30:52 +01:00
Eberhard Graether 635f6058c6 ui: Update error count while parsing 2016-01-28 13:19:38 +01:00
Eberhard Graether 38f943e8a0 logic: Undoing file minimize, snippets and maximize actions
* MessageChangeFileView as single message for changing file state in the code view
* Show code view after updates at once
2016-01-28 12:40:29 +01:00
malte_langkabel 297d5490c0 logic: name cache
* implemented name caching while visiting the AST of a translation unit.
2016-01-27 16:27:12 +01:00
malte_langkabel 45fcf80a74 build: fixed project setup
* expanded setup script to create symbolic links
* expanded clean script to remove symbolic links before deleting contents of Debug and Release folders.
* fixed lines in tutorial so they don't exceed the limit of 80 chars.
2016-01-27 16:14:48 +01:00
Eberhard Graether fdf44b4573 setup: Fixed include location for botan in lib_gui target 2016-01-27 15:43:29 +01:00
Eberhard Graether ae897c58a5 setup: Fixed botan debug and release split for Unix 2016-01-27 14:46:10 +01:00
Eberhard Graether 8044f5cb5f data: Fixed delete not working due to missing foreign keys pragma 2016-01-27 14:12:25 +01:00
Eberhard Graether 6cadab1b23 src: Fixed errors in file path switch 2016-01-27 12:20:46 +01:00
Manuel Dobusch 8d6220dafb logic: file paths
Changed relative file paths for resources to absolute paths to ensure functionality of shortcuts and file associations on windows platform
2016-01-26 15:28:43 +01:00
Eberhard Graether e0d7f1d613 logic: save template parameters as child nodes with member access 'template parameter'
* added access node to graph for template parameters, no icon so far
* don't reexpand function nodes with children when active before
* removed console warnings for edges
2016-01-26 14:38:41 +01:00
Andreas Stallinger 91d655f397 ui: fix about and licenses screen
esc now works for the about and license window
2016-01-26 13:35:56 +01:00
malte_langkabel ada00cc627 logic: template parameter as child nodes
* when generating the name hierarchy of a template parameter the parameter name is now an extra element that follows the template class/struct/function element.
2016-01-26 12:08:07 +01:00
Eberhard Graether b57ea3addb ui: increased performance of annotation painting in QtCodeArea 2016-01-26 00:21:07 +01:00
malte_langkabel 6a5975fe13 data: fixed storing of non-canonical includes
* Include paths are converted to a canonical version before they are tested for being in the project files. Therefore non-canonical include edges will be stored by Coati as well.
2016-01-25 17:13:22 +01:00
Eberhard Graether eb12d3cda1 logic: Show overview of analyzed symbols after launch
* show analysed nodes as bundles in graph
* ellide node names longer than 50 chars
* sort nodes alphabetic in these bundles
* show stats of analysis in code
* error are displayed as well in overview
* added keywords overview and error
* project description can be set in .coatiproject file
* description can include links to symbols using [symbol] syntax
* updated documentation
* increased toc nesting in documentation
2016-01-25 17:02:48 +01:00
malte_langkabel 8addbb2195 src: fix crash on edit project
* fixed crash when comparing two vectors of different sizes.
2016-01-25 16:40:28 +01:00
malte_langkabel 1209d0e7c0 ui: AWS in About window
* added "funded by the AWS"
* changed about window to depend on layout which is easily modifiable
* added aws logo
2016-01-21 14:45:21 +01:00
malte_langkabel 9250360750 web: documentation
* Created a web based version of our documentation.
* Updated all the texts to reflect the current version of Coati.
2016-01-21 13:59:09 +01:00
malte_langkabel 3b62c1353e build: fixed licensing project
* fixed license includes for windows
2016-01-21 13:54:41 +01:00
Eberhard Graether 46d9825454 logic: Trim lines and remove empty ones when checking license key 2016-01-19 11:48:41 +01:00
Eberhard Graether cc2b74ccca ui: Fixed listbox line layout on Mac 2016-01-19 09:58:58 +01:00
Manuel Dobusch ed1aba8858 build: Botan include fix
Fixed CMakeLists to allow debug build
2016-01-18 17:59:46 +01:00
Eberhard Graether 503e4f185b logic: Show node with search name main after parsing 2016-01-18 16:30:38 +01:00
Andreas Stallinger f16e6b58c5 build: fix botan find_lib for linux
add NO_DEFAULT_PATH to find_library so that the search exclude botan libs installed on the system
2016-01-18 15:09:21 +01:00
Andreas Stallinger 8bbd764cfc build: different find_library for windows and unix 2016-01-18 12:40:08 +01:00
Eberhard Graether e1f29da76a script: Look for botan-1.11 in CMake setup 2016-01-18 11:42:32 +01:00
malte_langkabelandEberhard Graether 8be7886c7a build: fixed cmake for windows
* added target for the license lib.
* switched to statically linked version of boost.
* removed boost dlls from bin directories.
* cleaned up CMakeLists.
2016-01-18 11:42:32 +01:00
Eberhard Graether f3223e535a ui: Removed tooltip css from SettingsWindow 2016-01-18 11:42:31 +01:00
Eberhard Graether 2954865d41 build: fixed boost linking 2016-01-18 11:42:31 +01:00
Eberhard Graether d2f9a748ef build: Fixed keygen integration after app/trial split 2016-01-18 11:42:31 +01:00
Eberhard Graether 8197172523 ressources: added template tags to app settings template 2016-01-18 11:42:31 +01:00
Eberhard Graether 75b102a528 ui, logic: design for license ui and forcing the user to enter a key on first open
This change integrates the license key ui into the application and makes it necessary for the user to enter a correct
key. The check for a correct key is done on startup and whenever a project is loaded. The check for the key also
includes a check whether the location of the application has changed.
2016-01-18 11:42:31 +01:00
Andreas StallingerandEberhard Graether 23257a3071 build,logic : Key/License Generator
Generator using the Botan Cyrptography library
2016-01-18 11:42:31 +01:00
malte_langkabel 743f91e882 locig: refresh after edit project
* implemented saving project settings force-refreshes the project if something has changed.
* when nothing has changed while editing the project settings, the project is not refreshed anymore.
* new project window is cleared now before it is displayed.
2016-01-18 10:59:32 +01:00
Eberhard Graether 3852bb7e5c ui: Fixed error locations at line end span down to next line 2016-01-18 10:22:57 +01:00
Eberhard Graether 3884db21d7 logic: Fixed deselection of edge didn't restore active locations in code view 2016-01-15 16:21:50 +01:00
malte_langkabel ca4fb79af7 ui: fixed search navigation bug
* fixed bug where navigating backwards to a symbol that was activated using the search bar did not update the search bar's text.
2016-01-15 13:43:09 +01:00
malte_langkabel 2c4711f657 logic: fixed undo redo not working for functions
* added real NameHierarchy (with signatures) when creating nodes for the graph, instead of using the SearchIndex which doesn't know about signatures.
2016-01-15 13:02:30 +01:00
malte_langkabel ad3229ebb2 data: fixed auto type
* fixed handling of non-deducible auto-type (e.g. when the auto-type depends on a template parameter).
2016-01-15 12:29:43 +01:00
malte_langkabel eecf8b95d2 data: expanded typename resolving
* implemented explicit handling of Decltype when resolving the typename.
2016-01-14 16:01:32 +01:00
malte_langkabel 5a39cab495 test: made tests run again.
* added call to SqliteStorage::init() in storage tests.
* made Storage::getIdForNodeWithNameHierarchy(...) return the correct node id again.
2016-01-14 13:28:49 +01:00
malte_langkabel c9e499c86c ui: language standard
* reversed the order of language standard options in the dropdowns.
2016-01-14 12:51:01 +01:00
Andreas Stallinger 047490512b ui: mouse cursor override
mouse cursor override in qtmainwindow removed, mouse cursor for codearea and graphview set to arrow
2016-01-13 17:15:53 +01:00
Eberhard Graether 99776f0242 logic: Defaults for C and C++ standard in dropdowns and fixed main to be first active symbol 2016-01-13 12:19:47 +01:00
Andreas Stallinger 46a629358c utility: loading project via commanlineargument
loading a project via commanline with --project or -p argument
2016-01-12 13:24:04 +01:00
Eberhard Graether b8faa5506d data: Fixed version check when opening older db 2016-01-08 14:51:11 +01:00
malte_langkabel ffca8841ea logic: exception parsing
* disabled clang warnings when analyzed code contains exception related constructs.
2016-01-08 13:40:40 +01:00
malte_langkabel 6d6d67470b data: performance optimization
* added index for node names.
* removed some unused methods of the SqliteStorage.
2016-01-08 12:20:27 +01:00
malte_langkabel 899138a6bd data: performance optimization NameHierarchy
* For performance reasons nodes now store a serialized version of their name hierarchy directly. Removed NameHierarchy table from database.
2016-01-05 16:42:29 +01:00
Eberhard Graether 6f083a10ac src: improvements to logging
* log messages as they are sent and received
* log information about messages by overriding method print()
* reduced logging of autocompletion list
* removed log location from message and parsing logs, as they are known and make up 90% of logs
2016-01-04 16:06:32 +01:00
malte_langkabel f44b76936d build: cmake fix
* removed parser files from the app target since they are already compiled into the parser_lib which is linked to the app target.
2016-01-04 15:22:15 +01:00
Eberhard Graether 94e3058e38 ui: Added shortcut to font size resetting 2016-01-04 11:34:20 +01:00
Manuel Dobusch 958dad1d59 logic: vs plugin solution utility
Utility class to get list of files in a vs solution in the plugin.
2015-12-30 01:06:15 +01:00
Manuel Dobusch 5af8d0f03f ui: graph toggle button number position
Improved the position of the small number in the graph node toggle button for windows.
2015-12-30 00:21:38 +01:00
Manuel Dobusch afc2d1e6b5 ui: windows start menu shortcut
Fixed an issue with the start menu shortcut generated when installing on windows.
2015-12-27 18:45:05 +01:00
malte_langkabel bed0f8f157 logic: c language support
* re-added gui for c project setup
* ASTVisitor now visits RecordDecls instead of CXXRecordDecls
* prevented endless recursion when parsing struct that is defined in functions signature.
2015-12-18 16:27:49 +01:00
Eberhard Graether 5c0493267c ui: Added option for hiding dock widge title bars to view menu 2015-12-17 14:28:47 +01:00
malte_langkabel b6beab8283 logic: fixed locations in macro
* fixed a bug where the end of source locations contained in a macro was not calculated correctly.
2015-12-17 14:14:03 +01:00
Eberhard Graether 32cc49b0fd refactor: Define tooltip style in single css file and pass it to QApplication 2015-12-17 13:45:02 +01:00
Eberhard Graether b107fd2655 ui: Fixed activation of unparsed file with errors not showing anything 2015-12-17 13:23:45 +01:00
Eberhard Graether dd119fe12c script: fixed Mac OS bundle script 2015-12-17 12:00:51 +01:00
Eberhard Graether b58778da0c resources: Added new changelog 2015-12-17 11:41:43 +01:00
Eberhard Graether f725dc1866 ui: use green for comments in bright scheme for better readability 2015-12-16 17:18:55 +01:00
Manuel Dobusch 8a1914182f ui: disabled language selection
Disabled language selection because parsing C code caused crashes.
2015-12-16 16:58:40 +01:00
malte_langkabel d5cf4b7109 logic: improved template argument parsing
* improved the way of gettig a TemplateSpecializationTypeLoc from any TypeLoc to parse template arguments.
* fixed wrong forward mouse button code in app settings.
2015-12-16 16:36:36 +01:00
Eberhard Graether 82a16341d8 ui: renamed undo&redo to back&forward, control back&forward via mouse and backspace
* the key codes for mouse back and forward buttons can be defined in the ApplicationSettings
* fixed only left mouse button allowed for graph interactions
2015-12-16 16:22:10 +01:00
malte_langkabel 103c8242f5 logic: fixed template argument parsing crash
* handled case when clang doesn't know the source info of an explicitly specified template argument :(
2015-12-16 13:27:00 +01:00
Eberhard Graether f06bb0e031 logic: Fixed log warnings of color scheme and edge
* fixed warnings for overriden node and edge colors
* fixed warnings for edges connecting the wrong node types
* removed tool tip from color scheme
* changed names in project setup screen
2015-12-16 11:33:59 +01:00
malte_langkabel a44af51122 data: function signature handling
* functions will only display their names in the graph view. hovering the nodes shows the signature as a tooltip. However, nodes in the database will be created and used regarding their signature.
* improved lambda handling. All calls to generated lambda functions (constructor, call operator) will now point to the lambda class instead.
* implemented handling of the "auto" type.
* improved the CxxParserTestSuite to use function strings instead of function names for template related functions.
2015-12-16 11:27:29 +01:00
Manuel Dobusch 28c1a0048b ui: windows setup prerequisit
Added windows prerequisit to installer project. This prompts the user to download and install prerequisit automatically.
2015-12-14 18:24:17 +01:00
malte_langkabel 3000b88bd3 test: fixed tests
* changed the tests to reflect the changes to source location parsing in commit 26203c4ac8
2015-12-14 17:21:38 +01:00
malte_langkabel 6b750de333 data: anonymous unions
* fixed crashes that occurred when parsing unnamed unions.
2015-12-14 17:12:19 +01:00
Eberhard Graether 7b6c83d441 ui: use bright tooptips in every color scheme because it can't be changed on Windows 2015-12-14 11:32:25 +01:00
Eberhard Graether e8dda6acbe logic: Fixed db refreshed when opening with existing db 2015-12-14 11:21:03 +01:00
Eberhard Graether ff3377161b ui: Improved spacing of children within function and method nodes 2015-12-14 10:11:48 +01:00
Eberhard Graether 1ddc4609e4 build: fixed trial project
* fixed boost dependency
* fixed TaskParseCXX of trial to initialize correctly
2015-12-13 05:18:40 +01:00
Eberhard Graether 801c2555bc src: fixed clang warnings 2015-12-13 04:48:04 +01:00
Eberhard Graether 87ad243f31 logic: Fixed crash when refreshing project after deleting coatidb 2015-12-13 04:32:59 +01:00
Eberhard Graether 26203c4ac8 data: Fixes for parsing Coati
* reverted to old source location retrieval for CxxConstructExpr, because source locations were outside file
* removed exisiting source location check for better performance
* fixed CXXParserTestSuite to use c++11 standard
* fixed crash on missing signature retrieval
2015-12-12 15:14:44 +01:00
Eberhard Graether cd4c0e64b4 data: Fixed language std not added to parser arguments 2015-12-11 19:15:37 +01:00
Eberhard Graether ceea7b6b48 build: Added app name to plist of Mac bundle 2015-12-11 18:10:07 +01:00
Manuel Dobusch 0f4e49477a ui: language standard options
Added some language standard options.

<description>
2015-12-11 15:22:28 +01:00
malte_langkabel 52352baa8e data: fix anonymous record crash
* implemented handling of anonymous classes and structs.
2015-12-11 12:27:38 +01:00
malte_langkabel 3da20e3e32 data: location crash fix
* fixed a crash that occurred when trying to find the correct location of a constructor call.
* refactored that code while being at it ;)
2015-12-10 18:59:49 +01:00
malte_langkabel 01bcf7266b data: lambda handling
* implemented handling lambdas as functions
* functions can have child nodes now
* NameElements in NameHierarchy can have signatures now.
* fixed crash that occurred when message listener was used while being half way through its destruction process.
2015-12-10 18:00:54 +01:00
Manuel Dobusch 2b03215ea4 ui: language standard
Added language standard select functionality to gui and language standard to project settings.
2015-12-09 19:54:13 +01:00
Andreas Stallinger c5077e1db1 build: missing boost include in cmakelists 2015-12-09 16:24:04 +01:00
Andreas Stallinger 59d6143fbf build: lib for the parser
lib_parser is new, its use by app and test

<description>
2015-12-09 14:34:14 +01:00
Andreas Stallinger a6648cafeb ui: different ui for trial and app 2015-12-09 13:00:39 +01:00
Andreas Stallinger 43409cd6b7 build: trial version target
builds now app and trail target, lib_gui added, istrail function
2015-12-08 17:55:12 +01:00
malte_langkabel ed4b6546f0 logic: template argument handling
* now Coati will also parse the body of an instantiated template function and follow calls to other template functions there.
* Coati will parse template arguments at the point of implicit or explicit template instantiation and explicit template specialization.
* refactored template handling in storage.
2015-12-08 10:29:21 +01:00
Eberhard Graether faa79e44f1 ui: added help texts to directory list boxes
* added a ? button to the labels of the directory list boxes to show help messages
* added a window stack to QtMainWindow for easier screen handling
* added a button to the preferences in the project setup
* removed 'has seen settings' flag from AppSettings
2015-12-03 19:09:42 +01:00
malte_langkabel 32db79a675 logic: fix infinite loop
* fixed a loop that might be running indefinitely while looking for the correct source location of an identifier.
2015-12-03 16:26:00 +01:00
Eberhard Graether 0424162acb ui: removed close window action from menu because it quits the application 2015-12-03 14:50:40 +01:00
malte_langkabel 151b4d8620 logic: fixed crash when calling message listeners that already have been destroyed
* prevented lambda created by MessageQueue::sendMessageAsTask to call functions on message listeners that already have been destroyed.
2015-12-03 13:54:47 +01:00
malte_langkabel 23909058c8 logic: fixed infinite loop
* fixed infinite loop that occurred when trying to find the source location of an unnamed template parameter.
* commented out the deploy settings define.
2015-12-02 16:38:06 +01:00
Eberhard Graether 3fac5e69f3 data: Fixed constructors and destructurs having return type use void without location 2015-12-02 16:24:37 +01:00
Eberhard Graether 1eb9b194ff ui: immediatly show all errors during parsing 2015-12-02 16:09:48 +01:00
Eberhard Graether 35b5e423da utility: creating directories with boost in FileSystem method 2015-12-02 15:23:27 +01:00
Eberhard Graether 7d0b3773e7 ui: Fixed font zoom not affecting graph 2015-12-02 15:12:42 +01:00
Manuel Dobusch 9ed8dd69c7 ui: windows uninstall
Added uninstall script
2015-12-02 14:57:38 +01:00
Eberhard Graether fb7113917d ui: updated about window 2015-12-02 14:52:54 +01:00
Manuel Dobusch 04196db81d ui: windows installer
Created a windows installer (vs deployment project).
2015-12-02 14:50:02 +01:00
Eberhard Graether 09bc453fb0 logic: Fixed graph view style settings not loaded correctly when project has errors 2015-12-01 15:12:04 +01:00
Andreas Stallinger 77466bb57e utility: Fileendings for DB and Settings changed
changed DB from .sqlite to .coatidb and Projectsettings from .xml to .coatiproject
2015-11-30 16:02:05 +01:00
Andreas Stallinger bfaceceb29 build: remove Coati folder from linux package
removed the coati folder in Coati-<version> folder, was one folder too much
2015-11-27 15:05:14 +01:00
Eberhard Graether 9af08f4ff1 ui: Fixed font size in graph smaller on non MacOS systems 2015-11-26 00:13:58 +01:00
Eberhard Graether 6d8f733962 ui: show signature in function & method tooltip 2015-11-25 16:48:26 +01:00
malte_langkabel 622972cd28 logic: Template Parameter Packs
* implemented handling of template parameter packs.
* added tests for these cases.
* refactored some areas of the template code.
* fixed the names of template arguments that get parsed when they occur in a function's/declarator's body.
2015-11-25 15:43:59 +01:00
Eberhard Graether f29a966504 ui: fixed syntax highlighting
* fixed strings and number highlights within comments
* fixed quotations not considering escaped quotations within strings
* fixed quotations spanning till last quotation in line
* fixed tag quotations only used after blank space
* fixed multiline comments using correct start and end
* fixed single line comments interfering with multiline comments
2015-11-25 14:05:03 +01:00
malte_langkabel 0144c44d1d data: Fix Locations of Declarations
* using clang's lexer to get the exact location of a declaration's identifier.
2015-11-24 14:09:17 +01:00
Andreas Stallinger a5f08d0946 ui: fix for loop warning
replaced int with size_t
2015-11-24 11:00:58 +01:00
Manuel Dobusch 057ab57a42 logic: vs plugin bug
Error handling for plugin bug where the client socket is disposed when it's still needed.
2015-11-23 15:41:26 +01:00
Eberhard Graether fa7c8d8b40 ui: use icons in directory list box UI 2015-11-23 14:01:56 +01:00
malte_langkabel 96d933633f ui: Show Template Definition
* Show template definition in codeview when implicite specialization is active.
2015-11-20 15:38:35 +01:00
Eberhard Graether f5f4eed509 ui: extended color scheme and added new color scheme bad_rainbow
* added color scheme template
* define fill, border, text, icon and hatching colors for each node with states normal and focus
* define colors for each edge with states normal and focus
* use default node and edge colors when no type specific ones are defined
* use normal colors for nodes and edges when no focused are defined
* allow nodes and edges to imitate look of others with "like" tag
* added style for bundle
* added style for count circle
2015-11-20 15:24:20 +01:00
malte_langkabel 9f0df1bcee src: Handling of Anonymous Enums
* names of anonymous enums are constructed like names of anonymous namespaces.
2015-11-20 14:15:24 +01:00
malte_langkabel c40dda07f8 src: Fix Annotations after Snippet Merge
* snippet::merge does not take code from TextAccess since it could be out of date. Instead it takes the code from the snippets that will be merged.
2015-11-20 12:02:33 +01:00
malte_langkabel bbf9c43909 src: Template Argument Handling
* improved handling of template arguments
2015-11-19 16:30:59 +01:00
Eberhard Graether 4e6fdaf79c setup: improved MacOSX bundle script to do all the release work 2015-11-19 10:29:52 +01:00
Eberhard Graether 19b4d152c7 resources: updated manual and added changelog to README 2015-11-19 09:37:27 +01:00
malte_langkabel 9da116ddcf logic: Parsing Field Initializations
* extended use of ASTBodyVisitor methods for visiting VarDecls to include FieldDecls as well (part of C++ 11).
* impemented handling of invalid source location in ASTVisitor to prevent crash.
2015-11-18 19:44:30 +01:00
Manuel Dobusch fbc5f7a7fe logic: network port option
Added options to Coati and VS plugin to set network ports
2015-11-18 17:08:05 +01:00
malte_langkabel ea04dc926f script: windows packaging script updates
* changed the name of the folder that gets packaged.
* added some [y/N] questions.
2015-11-18 14:56:40 +01:00
Eberhard Graether 816be7b654 ui: undefined symbols bundle needs at least 2 nodes 2015-11-18 13:22:57 +01:00
malte_langkabel 901fa1a387 data: template argument handling
* storing template argument relations for cases where at lease one of these (template class, template argument) is defined inside the parsed project files.
* prevented storage from saving the same source location multiple times.
2015-11-17 18:09:20 +01:00
Andreas Stallinger 88b94a21d0 build: linux package
linux package
2015-11-17 16:41:49 +01:00
malte_langkabel 102bc8945a test: comment parsing
added tests for comment parsing.
2015-11-17 14:03:56 +01:00
Andreas Stallinger 86f06c9f78 ui: recent projects menu fix
recent projects updates now when a projects is loaded
2015-11-17 12:13:48 +01:00
malte_langkabel 42afbce300 resources: Tutorial Project Improvements
* implemented "user study" feedback
2015-11-17 10:54:56 +01:00
malte_langkabel 8f0213e18c build: Packaging Script for Windows
* added packaging script for windows
* renamed sublime plugin.
* added tictactoe project to packages projects
2015-11-16 15:42:23 +01:00
Andreas Stallinger fc816240cb ui: Recent projects in menu
add a recent projects menu in the project menu
2015-11-13 22:53:37 +01:00
malte_langkabel 7fce4cfae6 resources: Tutorial Project
* added tutorial project to coati projects.
* ignoring all .sqlite files for git.
2015-11-13 18:55:10 +01:00
Eberhard Graether 3c2804797a logic: improvements for IDE communication
* fixed Sublime Text plugin to correctly send messages
* activate and focus Coati window when receiving a message
* extended lookup range for activate token message from plugin
2015-11-13 13:09:22 +01:00
Eberhard Graether df7c5ea9b7 ui: code view scrolls directly to active line
This change makes the code view first look for the rect of the first active line and then tries to scroll this line into
the middle of the view.
2015-11-13 10:39:30 +01:00
Eberhard Graether de4f2973bc ui: Fixed search query without node disappears when submiting search request 2015-11-12 13:45:57 +01:00
Eberhard Graether 00b74d2f30 ui: focusing multiple tokens at once
This change focuses all token locations underneath the cursor at once by extending the focus handling to use vectors.
2015-11-12 10:14:46 +01:00
Eberhard Graether 28e3880e10 ui: Fixed cursor jumping to end position when editing search query 2015-11-11 15:13:48 +01:00
Eberhard Graether 42aa99d99b ui: reworked code view highlighting
This change draws the annotations in the code view in the paintEvent handler instead of using the ExtraSelections API.
Annotations are now drawn with a slight corner radius. Fill and border colors are defined in the ColorScheme.
2015-11-11 15:02:23 +01:00
Eberhard Graether 3351e4aad7 data: fixed parsing problems
* fixed calleeDecl pointer not checked for CallExpr
* fixed CommentHandler not checking if valid file in FileRegister
2015-11-10 10:25:47 +01:00
Andreas Stallinger 5ef9ef9e7d build: publish and sync script modification
now you can pass a branch to the publish and sync script to sync or publish to another branch  then master
2015-11-10 10:11:50 +01:00
Andreas Stallinger a4c134ebe2 src: fix clang warnings in QtCodeArea 2015-11-09 15:32:42 +01:00
Manuel Dobusch f2a202c064 logic: vs focus
Setting cursor in VS via Coati now sets the focus to the VS window.
2015-11-09 13:59:55 +01:00
Eberhard Graether 372f262204 data: don't parse lambda calls to avoid subnodes within functions 2015-11-06 14:50:25 +01:00
malte_langkabel 50bc970c30 data, ui: comment handling
* CodeView displays comments as atomic regions. They are either displayed as a whole or not at all. Do nothing halfway!
* added CommentHandler that handles comments detected by clang.
* stored CommentLocations in database.
2015-11-06 14:03:20 +01:00
Manuel Dobusch e186eefdff ui: context menu
Context menu for code view added, including option to set IDE cursor.
2015-11-04 18:51:49 +01:00
Eberhard Graether bcbeacb951 utility: Fixed crash when creating Timepoint with empty string 2015-11-04 15:12:35 +01:00
Eberhard Graether 961d0fe541 ui: clearing data in ProjectSetupScreen after creating new project 2015-11-04 14:14:20 +01:00
Eberhard Graether 5dada05bc5 data: saving macro definition scopes 2015-11-04 13:47:33 +01:00
Eberhard Graether 884e42a30c test: fixed TestSettings.xml and cleansed test_log.txt 2015-11-04 13:02:35 +01:00
Eberhard Graether 9f684ad9f5 data: saving errors to Storage
* saving errors in separate sqlite table
* use MessageShowErrors to show the errors in the UI
* show error count permanently in the right side of the status bar with click to show
* fixed clicking of error locations
* fixed expanding of files with errors
2015-11-04 12:00:28 +01:00
malte_langkabel 78259c7123 src: refactoring TimePoint
* removed typedef utility::TimePoint and replaced all its usages by using the class TimePoint instead.
2015-11-03 16:48:55 +01:00
Manuel Dobusch 7d03166282 logic: VS plugin fixes
Fixed some vs plugin issues and added plugin project to repo
2015-11-03 15:26:47 +01:00
malte_langkabel 006e73ef4c ui: horizontal scroll fix
* prevented the mouse wheel from scrolling a horizontal scrollbar when the mouse happens to enter the scrollbar's area.
2015-11-03 12:40:03 +01:00
malte_langkabel 11147e982f test: template scope fixes
* changed expected scope locations of template classes in tests to include template parameters.
2015-11-03 11:11:20 +01:00
malte_langkabel 9c4dc7b71f src: Sublime Text 3 compatibility. 2015-11-03 10:53:14 +01:00
malte_langkabel a524a7a71c ui: file not up to date display
* the codeview now displays a hatched background for a filename when the file's content has changed or the file does not exist anymore.
* added TimePoint class to encapsulate boost.
2015-11-03 10:29:29 +01:00
Eberhard Graether 42ab36fbad data: Saving application version to storage and refresh when version changes
The version string of the application is stored on every parse. The utility class Version is used to parse the version
string and compare application and stored string. The third number in the version string is now the storage refresh
number, the project will be refreshed when it changes. (0.2.1 -> 0.2.2)
2015-11-02 10:14:03 +01:00
malte_langkabel 1ad2dbe86e ui: status messages for IDE communication
* added status messages that are displayed when sending commands to the IDE.
* added status messages that are displayed when receiving commands from the IDE.
2015-10-30 11:34:28 +01:00
malte_langkabel e8c8a4ca50 logic: sublime plugin fix
* implemted checking if file really exists before letting sublime jump there.
2015-10-30 10:54:56 +01:00
Andreas Stallinger 58daa633c9 data: check for nullptr in searchindex 2015-10-29 13:33:12 +01:00
malte_langkabel a7ad0a60f3 ui: coati plugin for sublime
* Added first version of the CoatiCommunicator for Sublime.
* This version has only been tested with Sublime Text 2.
2015-10-28 15:10:47 +01:00
Eberhard Graether c7a2533dc4 data: increased autocomplete performance by caching and limiting results to 100 2015-10-27 14:22:45 +01:00
Andreas Stallinger cbb6fcd8e2 test: fixed settingstestsuite
changed settings.xml to new/refactored xml tags
2015-10-27 10:13:29 +01:00
malte_langkabel c704b4f65c ui: IDE communication integration
* handled communication from VS to Coati and vice versa.
* one bug still remains: Coati regards a tab as a single character while VS regards it as multiple characters. This causes offsets in communicated positions.
2015-10-23 13:25:15 +02:00
malte_langkabel c06beb21cb data: template class/function scope locations
* Added source locations of template parameters to the scope of template classes and functions to improve context availability in the code view.
2015-10-21 19:56:47 +02:00
Eberhard Graether 1382356a39 build: added release instructions to README 2015-10-21 10:34:11 +02:00
Andreas Stallinger 541bed1db2 build: Private beta tag 2015-10-20 17:40:44 +02:00
Andreas Stallinger 5af8800eed build: linux package private beta
update linux package for private beta
2015-10-20 17:12:05 +02:00
malte_langkabel 52494ba402 build: disabled console for release builds on windows
* updated cmake to cause visual studio to open up a console window only when running a debug build.
2015-10-20 16:36:56 +02:00
Eberhard Graether dc39e10858 build: mac bundle fix and other prerelease fixes
* fixed rpath in mac bundle
* added Qt5Network and Qt5DBus frameworks to bundle
* fixed project settings not saved
* fixed preferences not shown on first start
* added coati_manual.pdf
2015-10-20 16:15:17 +02:00
malte_langkabel 73b25c45ff data: cleaning xml tag names
* replaced xml tags that have been written in PascalCase with the underscore_notation throughout all of the settings files.
2015-10-20 11:08:42 +02:00
malte_langkabel a73906252e ui: acknowledgements
* added acknowledgement text to mention the "FH Salzburg".
* fixed alignments in about screen.
2015-10-20 10:25:12 +02:00
malte_langkabel e8a63c9de5 ui: removed horizontal scrollbars in code snippets
* they were still there when running coati on windows.
2015-10-15 16:41:41 +02:00
malte_langkabel b0245f9d7b ui: panning in code view
* Implemented horizontal panning for code snippets by dragging the mouse left and right.
2015-10-15 16:28:55 +02:00
malte_langkabel e1683d047a ui: clickable file scope
* When content that is shown in a snippet is located in the file scope, the snippet's title bar displays the file's name. Clicking this name has the same effect as maximizing the file (the file's entire content is shown but the file symbol is not activated).
2015-10-15 12:24:24 +02:00
Manuel Dobusch 0664f9a81b logic: IDE Communication
Network code and controller added to communicate with IDE plugins. Does not include GUI integration though.
2015-10-14 15:40:10 +02:00
malte_langkabel 4e4cb25540 logic: fallback selection after refresh
* extracted code for translating input messages to token activations from the FeatureController to the helper class ActivationTranslator.
* used ActivationTranslator in UndoRedoController to determine if the symbols that have been selected before refresh are still available after parsing again.
2015-10-14 12:27:05 +02:00
malte_langkabel e61171cc85 data: Template Member Specialization Edge
* Added a new edge that connects a method of an implicitly specialized template class to its definition in the unspecialized template class.
* Added a test case for this.
* Made methods that have an invalid source location stored as undefined.
2015-10-13 13:29:36 +02:00
Eberhard Graether 27bf5108ab data: fixed file clearing to clear only elements with no more source_locations 2015-10-12 11:42:19 +02:00
Eberhard Graether 29afd80673 data: Readded manual element clearing when clearing file nodes 2015-10-09 11:46:27 +02:00
Eberhard Graether 2286e7de1b test: Fixed tests to use new Node construction 2015-10-09 11:28:45 +02:00
Eberhard Graether c553e29ff8 data: save undefined in database field instead of using different node types
* expand toggle also for undefined classes
* changed direction of some template edges
* save same access component to specialized template functions and classes
2015-10-08 23:12:37 +02:00
Eberhard Graether ebeaff2724 build: Fixed Boost version number in cmake find package call 2015-10-08 12:00:37 +02:00
malte_langkabel 87ff089178 build: update dependencies
* updated dependencies for windows
* implemented getFileInfo of TestFileManager as virtual.
2015-10-07 14:35:01 +02:00
Eberhard Graether 0fba3f5cf9 logic: random fixes and improvements
* added new logos to setup ui
* changed wording in status messages and bundle nodes
* removed ununsed Vector.h
* save NameHierarchy to SearchMatch
* fixed NameHierarchyElement retrieval for name elements without parent
* fixed match weight to score last letters higher
2015-10-06 16:21:03 +02:00
Eberhard Graether 8d3112d5a9 data: increased file clearing performance
This change passes all file node ids for clearing to the sqlite storage at once and makes use of ON DELETE CASCADE for
everything else, instead of manally deleting all source locations.
2015-10-05 09:44:27 +02:00
Eberhard Graether f041e69789 test: fixed tests 2015-10-02 18:21:00 +02:00
Eberhard Graether acfbe510fb logic: fixes all over the place
* fixed refreshing to send another ui refresh message after parsing
* keepContent field for MessageBase so that views won't update
* fixed searchmatching to only weigh uppercase letters next to lowercase ones
* fixed file not jumping back to snippets when activating edge
* clicking into empty space deselects active edge
* clear file manager files on every fetch
* added db transaction for file clearing
* use zooming instead of changing font size
2015-10-02 17:07:03 +02:00
Eberhard Graether a855e14ebf logic: make SearchController only listen to MessageActivateTokens
This change makes MessageActivateTokens being used consistently throughout all Controllers. The FeatureController
accepts all incoming activation messages and turns them into MessageActivateTokens, which are then accepted by all
view controllers.
2015-10-02 10:18:17 +02:00
Eberhard Graether 2704d47cd8 logic: multiple fixes and improvements
* showing project name in main window title
* keep reference count visible when maximizing code file
* show first node in db when no main function is available
* log Storage stats after parse
* fixed macro locations saved multiply
* using NameHierarchy when retrieving ids
2015-10-01 19:03:05 +02:00
Eberhard Graether 8fa9bdde5e data: refactored file clearing on reparse to use TaskClearStorage 2015-10-01 13:45:31 +02:00
Eberhard Graether 5b47661a90 build: using directories build_debug and build_release for clang consistently 2015-10-01 10:03:08 +02:00
Eberhard Graether de1af6ce7d data: saving file contents to sqlite db 2015-09-30 02:12:49 +02:00
Eberhard Graether 4782efddcb ui: always show whole file on top when selecting file node 2015-09-29 15:22:00 +02:00
Eberhard Graether 201e6d24a9 ui: new features for the Graph UI
* removed node shadows
* made enums collapsible
* added icons to nodes: enum, typedef, macro, bundle
2015-09-29 15:10:44 +02:00
Eberhard Graether 8777c9874b logic: don't refresh project on reopen 2015-09-29 14:47:36 +02:00
Eberhard Graether eeed22f478 build: updated to new clang and other fixes
* don't save macros from external files
* fixed macro and include saving duplicates
* added NODE_UNDEFINED_MACRO

TIL = You need to cut a 1kg cake about 85 times in half until you have a piece with only a single atom.
2015-09-29 14:22:52 +02:00
Andreas Stallinger e3696df5e1 data: Macro handling
Macros have now edges from Files where they are usesd
2015-09-28 15:25:52 +02:00
Eberhard Graether dd4d74a1d9 ui: precollapse files in code view
This change shows the files in the code view minimized, if more than 5. This greatly improves performance, because code
and annotations won't get loaded until needed. Files including declarations or definitions of the active symbol are
still expanded. The number of references in each file is now shown in it's title bar. Clicking the title bar allows for
expanding and collapsing as well now.
2015-09-28 15:18:52 +02:00
malte_langkabel 27ed5a0635 data: handling nested type names
* Implemented recursive handling of nested names in CxxTypeNameResolver. For example used when resolving names of dependent template parameters.
2015-09-26 19:18:07 +02:00
Eberhard Graether ae27d8025b ui: show tooltips when hovering nodes and edges 2015-09-24 16:18:23 +02:00
Eberhard Graether b8c95c5a20 logic: removed namespace splitting from GraphController
Namespace splitting is now handled in active token id retrieval from the Storage, so that namespace nodes are not added
to the Graph at all and complexity in the GraphController is reduced.
2015-09-24 15:37:35 +02:00
Eberhard Graether 97e49d9b3f data: added HierarchyCache for storing member relationships
This change introduces the HierarchyCache that caches the member relationships of nodes in memory for faster graph
retrieval. Storing these relationships allows for retrieving nodes and edges as lists from the SqliteStorage at once
which results in a 10 fold speed improvement.
2015-09-24 12:43:49 +02:00
Eberhard Graether 5c06dedf7c data: Fixed inheritance parsing for tests 2015-09-24 10:30:25 +02:00
Eberhard Graether 5825fe77ab ui: switch Graph to bucket grid layouting
This change introduces bucket grid layouting, which sorts the nodes into buckets based on how they are connected. Each
bucket is then layouted individually before they are arranged next to each other. Edges go from left to right, except
for inheritance edges that go from bottom to top.
2015-09-24 03:12:42 +02:00
Eberhard Graether c18bd6a8bc data: fixes for parsing and logging
* readded Storage logs
* turned type name resolver error logs to info logs
* fixed inheritance not parsed in forward declarations
* check file node id before saving source location
* show errors in unparsed files again
2015-09-24 02:39:10 +02:00
Eberhard Graether bb3a8bf351 ui: force refresh option in menu for reloading whole project 2015-09-23 16:44:39 +02:00
Eberhard Graether 502909c789 data: retrieving multiple datums with single queries
* getting all incoming and outgogin edges to children at once in aggregation edge computation
* getting all edges connected to active node at once
* getting all access components for all member edges at once.
2015-09-23 14:32:33 +02:00
Eberhard Graether 391082160c data: saving NameHierarchy directly to Node without TokenComponentName 2015-09-23 12:45:58 +02:00
Eberhard Graether b07bc7ed19 data: readded signature distinction for functions 2015-09-23 12:04:19 +02:00
Eberhard Graether 3d48145e47 data: Fixed edge creation
* reuse edges of same source, origin and type with multiple source locations
* save return type and parameter type uses as type usage for single edge
2015-09-23 10:23:46 +02:00
Eberhard Graether ef54299deb data: increased aggregation edge creation performance 2015-09-23 10:01:28 +02:00
Eberhard Graether 78c1b32797 data: increased parse and graph assembly performance
* removed header search in subdirectories of header search paths
* cache file node ids in Storage for faster lookup
* retrieve node names from SearchIndex
* fixed addNodeAndAllChildren also called for member edges
* added check if node already present in addEdgeAndAllChildren
2015-09-23 09:26:03 +02:00
malte_langkabel e9d45a507a ui: project settings fix
* fixed open folder dialog in project settings.
* changed foreign key relation of component_access from the element to the edge table.
2015-09-17 16:48:05 +02:00
Eberhard Graether 0c7624a5ef data: saving and retrieving access components from and to Storage again 2015-09-17 15:58:10 +02:00
Eberhard Graether 04f24ba63d test: Fixed tests 2015-09-17 15:07:46 +02:00
Andreas Stallinger b36e3fb758 build: gather linux libraries for package automated 2015-09-17 14:10:11 +02:00
Eberhard Graether a596c58b02 data: Fixed performance drop in file path search 2015-09-17 13:53:28 +02:00
Eberhard Graether a14bfaff56 data: saving and loading Storage with sqlite file next to project file 2015-09-17 12:08:25 +02:00
Andreas Stallinger f702b79892 src: fixed headersearchpaths, there where not inlcuded
<description>
2015-09-17 11:31:00 +02:00
Eberhard Graether 05d390fb3f src: some fixes
* fixed field declaration type has no source location
* grouped menu items
* overload edge pointing in right direction
2015-09-17 11:08:04 +02:00
Andreas Stallinger be0eaf9d0d data: forward declaration for storageAccessProxy in FileManager
<description>
2015-09-17 10:47:48 +02:00
malte_langkabel 3d94b78b8c data: refreshing with DB
* database stores modification time of files.
* FileManager updates internal state based on database info.
* reimplemented FileManager's check if a file is in project.
* implemented clearing data of updated or removed files before reparsing the updated and added files.
2015-09-16 18:53:33 +02:00
Andreas Stallinger 73b1b77ca8 data, utility: Fixes to run Opensource Projects
templateSpecializationArgsAsWritten returning null caused a crash
VisitMemberExprInDeclBody for vardecl was missing
subdirectories for headersearchpaths, that the user does not need to add a hugh amount of folders
2015-09-16 17:08:16 +02:00
Eberhard Graether fb5316cb7f ui: toggling view visibility from the view menu 2015-09-11 18:03:44 +02:00
Eberhard Graether 6e835bd5f5 ui: activating multiple overlapping source locations
All overlapping source locations will be activated and the corresponding nodes highlighted, with all of their names
displayed in the search bar.
2015-09-11 14:52:39 +02:00
Eberhard Graether 0fc80d2a52 data: rewrote TicTacToe to work without std libs and split to cpp 2015-09-11 13:00:43 +02:00
Eberhard Graether eaa3fab4ec ui: fixes
* fixed first match in autocompletion not preselected
* fixed maximize file button extending snippets
* changed names of views and setting name of composite view
* fixed number of error locations
2015-09-10 15:49:28 +02:00
Andreas Stallinger 4c0d749a39 build: linux package fix
some linux package fixes and now there is a package option in the build.sh script
2015-09-09 16:39:23 +02:00
Andreas Stallinger baedc3eed1 ui: aboutwindow
changed about window that it is consistent with the other windows
2015-09-09 14:54:51 +02:00
Andreas Stallinger 8c606ef5c4 ui : License Menu
3rd Party Licenses in Menu Help -> Licenses
2015-09-09 14:23:59 +02:00
Eberhard Graether 3eff72340d ui: fixed flickering of search autocompletion box 2015-09-09 12:23:19 +02:00
Eberhard Graether 70283f7610 ui: new style for bundle node 2015-09-09 11:48:16 +02:00
Eberhard Graether 934c70272d ui: new file node style with icon 2015-09-08 17:08:33 +02:00
Eberhard Graether a7ec6772ff data: Fixed aggregation edge creation and display 2015-09-08 14:36:17 +02:00
Andreas Stallinger c8679dabbe build: Linux Package Reworked
New Linux Package, data folder moved to where the user have the rights to edit.
2015-09-07 10:27:34 +02:00
Eberhard Graether 1ba802dd9b ui: added ApplicationSettingsScreen
* opens on first start autmatically
* open from the menu under Preferences
* show version number on splash screen
* added recent projects markup to app settings template
* moved all qt window classes to qt/window
* put common form stuff from project setup and app settings into QtSettingsWindow
2015-09-04 14:38:30 +02:00
Eberhard Graether 5ab627b735 ui: reworked StartScreen and ProjectSettupScreen UI flow
* realigned buttons and elements
* fixed retina styles for mac
* removed MessageLoadSource and subsequent functionality
* edit existing project through menu
* browsing paths from the line item in QtDirectoryListBox
* grow QtDirectoryListBox instead of scroll
* take any file or directory as valid path
* fixed new project setup screen background
* fixed screen handling on cancelation
2015-09-04 10:54:37 +02:00
Eberhard Graether 1b445d4c3a src: removed query syntax
This change removes the query syntax from the QtSmartSearchbox and all its classes. Now it only autocompletes to one
single Token, but the UI functionality for composing a query of multiple elements is still left for later use. The struct
SearchMatch is now used in the whole pipeline for passing search results back and forth.
2015-09-02 11:52:07 +02:00
Eberhard Graether 9bcf7d2f0f data: cleaned up TokenLocation classes
* removed self assiged locationId
* show errors after parse again
2015-08-27 22:14:12 +02:00
Eberhard Graether 2044ff9723 data: cleaned up Graph classes
* removed self assignment of id from Token
* removed FilterableGraph interface from Graph
* creating Nodes and Edges on Graph with addNode and addGraph methods
* removed obsolete Aggregation edge filtering
* fixed clang warnings
* fixed memory leak for Node creation
2015-08-27 17:25:52 +02:00
malte_langkabel e628241b02 data: database storage
* replaced storage by a new version that utilizes sqlite for persistence.
* added SqliteStorage to manage direct access to the database.
* added testsuit for sqlite.
* slimmed down the protected interface of the storage.
* changed tests in StorageTestSuit to avoid using protected methods of the storage.
* added functions to begin and commit a transaction to the storage.
* removed GraphFilterTestSuite.
* removed GraphFilterConductorTestSuite.
* added Node and Edge constructor that takes id as parameter
* added constructor for TokenComponentNameCached that accepts NameHierarchy as parameter
* added TokenLocation constructor that takes locationId as parameter.
* created respective construction functions in TokenLocatonLine, -File and -Collection.

fortune cookie message = Recognition will come from unexpected sources.
2015-08-25 18:07:02 +02:00
malte_langkabel d996cf384d build: qt and version patch for windows.
* added dlls for QT5.5.
* changed version script to find and use the git.exe
2015-08-25 17:56:59 +02:00
Andreas Stallinger fb877e1304 build: fix compiler and cmake warnings
added missing virtual destructor
fixed a warning in token.h: expression with side effects will be evaluated despite being used as an operand to 'typeid'
CMP00043 Cmake warning
added missing override keyword
2015-08-18 14:43:32 +02:00
Andreas Stallinger d8489c0b04 build: versioning
versioning via git tags, commits after tags are displayed in the versionnumber
2015-08-18 11:32:22 +02:00
Eberhard Graether 30c941fcf8 logic: crash fixes
<description>
2015-08-07 00:17:41 +02:00
Eberhard Graether 30b5abd672 ui: added icon colors to ColorScheme
This change introduces the qt utility function colorizePixmap() for colloring icons in different colors for different
color schemes.
2015-08-05 21:02:52 +02:00
Eberhard Graether c0a31fca18 logic: Reloading ProjectSettings on refresh 2015-08-04 16:21:55 +02:00
Eberhard Graether 9c4e3950b6 build: updated Mac build to Qt 5.5 2015-08-04 15:38:12 +02:00
Andreas Stallinger e7a977dd5c UI: ProjectSettingsUI
ProjectSettingsUI for creation of new Projects + StartScreen design update
2015-08-03 17:24:24 +02:00
Eberhard Graether f823d0ddb4 ui: fixed some ui related bugs
* aggregation edges only connect toplevel nodes
* fixed aggregation click for undo and redo
* don't show edge name in search field, because they are not searchable
* clear search field when clicking aggregation
* leave active nodes active when clicking edges
2015-08-03 16:33:29 +02:00
Eberhard Graether 165f32f6a6 logic: MessageFlushUpdates to send new Graph to GraphView when restoring Graph 2015-07-30 20:24:18 +02:00
Eberhard Graether 5f25311389 logic: paths in ProjectSettings relative to file not working directory
This change checks all paths in the ProjectSettings file for relativity and makes them relative to the location of the
ProjectSettings file if necessary. The paths are also correctly saved relative to the file.
2015-07-29 22:20:26 +02:00
malte_langkabel 336df76912 ui: fixed ui refresh crashes
* fixed thread based crashes on refresh by adding functors for the required functionality.
2015-07-20 15:48:02 +02:00
Eberhard Graether 0f9e72d553 src: Fixed refresh of QtUndoRedoView in wrong thread 2015-07-20 15:02:01 +02:00
Eberhard Graether 73aa6080aa ui: clicking snippet title to show full scope
This change lets the user click the snippet title in the CodeView to insert the full scope. The existing snippets are
merged with the new lines accordingly.
2015-07-20 00:57:19 +02:00
Eberhard Graether e5a8609d7a ui: removed namespace nodes from graph
Nodes within namespaces are display their full name including the namespace.
2015-07-18 22:03:13 +02:00
Eberhard Graether 85d2ebc32a logic: removed FilterUndefinedNodesFromGraph setting
because it is confusing and not necessary anymore since we have bundled nodes.
2015-07-18 13:46:03 +02:00
Eberhard Graether 5722b4dc23 ui: color schemes
Put all colors into single xml file. Accessing colors is handled via the singleton class ColorScheme. The default scheme
"bright.xml" holds the original colors. The scheme "dark.xml" is a start, but still a poor alternative. Color schemes
can be switched via the View menu.
2015-07-17 19:50:39 +02:00
Eberhard Graether fb170cbd5d ui: added universal font size setting and shortcuts for changing it
This change adds font size and font family to the ApplicationSettings to have a single point for manipulating them. The
font size can also be changed via the menu or the zoomIn and zoomOut shortcuts on all platforms.
2015-07-15 00:38:10 +02:00
Eberhard Graether 7275082284 logic: correctly undoing graph interactions by replaying actions since last active token change
This change introdoces a classification of commands by order in the undo stack. Undoing the last action will resend the
message of the last active token change and all messages changing the ui after that.
2015-06-24 01:15:31 +02:00
malte_langkabel 3587b487dd ui: Fixed animation crash
* Fixed crash that occurred when resetting the current animation in the QtGraphView.
2015-06-23 16:36:39 +02:00
Eberhard Graether a527a3c34d logic: rewrote messages handling token activation for correct restoring on undo
* saving search query to undo stack with MessageSearch
* saving node and edge with name to undo stack with MessageActivateNode and MessageActivateEdge
* added FeatureController that handels distribution of MessageActivateTokens
* clearing views when refreshing or changing project
* clearing undo stack when changing project
* added StorageCache derived from StorageAccessProxy
2015-06-19 00:20:50 +02:00
Eberhard Graether d6269f9608 ui: bundling nodes in the graph view
This change bundles similar nodes in the graph view together. When the bundled node or it's aggregation edge are clicked,
then the bundle is split. This change also adds an arrow to the aggregation edge based on the direction of it's edges.
2015-06-17 22:47:08 +02:00
Eberhard Graether eb4b82c015 web: added analytics tracking code to mediacube page 2015-06-15 10:47:53 +02:00
Eberhard Graether 3a6c0440f2 test: fixed tests after use of EDGE_TYPE_USAGE for return and parameter types 2015-06-12 12:37:02 +02:00
Eberhard Graether 3c6782d94d data: fixed graph display errors
* fixed Storage saving specialized template functions as undefined function node
* fixed usages of same type in functions in return or parameter not clickable in graph, because the edges are on top
2015-06-11 14:04:20 +02:00
Eberhard Graether 063d972b13 ui: stop old graph animation before starting new one 2015-06-09 23:23:07 +02:00
Eberhard Graether e85b9e7425 ui: fixed jumps in graph navigation
* moved graph postprocessing to GraphController to avoid reprocessing on edge activation
* animat sceneRect of the GraphView to avoid jump at end of animation
2015-06-09 22:51:09 +02:00
Eberhard Graether 0c41aecfc9 ui: reworded file tooltips
* and added sample source
2015-06-09 14:09:12 +02:00
2257 changed files with 686871 additions and 23330 deletions
-21
View File
@@ -1,21 +0,0 @@
#!/bin/bash
ABORT="\033[31mAbort:\033[00m"
SUCCESS="\033[32mSuccess:\033[00m"
INFO="\033[33mInfo:\033[00m"
BRANCH_NAME=$(git symbolic-ref -q --short HEAD)
if [ -z $BRANCH_NAME ]
then
echo -e $ABORT "You are not on any branch."
exit 1
fi
if [ $BRANCH_NAME == "master" ]
then
echo -e $ABORT "Commiting to master is prohibited."
exit 1
fi
exit 0
+59 -10
View File
@@ -1,18 +1,67 @@
/build/
/distr/
/deps/
/bin/app/Debug/
/bin/app/data/log/
/bin/app/data/projects/
/bin/app/data/ApplicationSettings.xml
/bin/app/data/window_settings.ini
/bin/app/Release/
/bin/app/data/projects/ignored/
/bin/app/data/java/
/bin/app/user/log/
/bin/app/user/ApplicationSettings.xml
/bin/app/user/window_settings.ini
/bin/app/*.log
/bin/lib/
/bin/test/Debug/
/bin/test/Release/
/bin/test/data/log/
/bin/test/data/temp.xml
/bin/test/data/TestSettings.xml
/java_indexer/bin/
/java_indexer/lib/
/setup/Linux/lib/
.DS_Store
.idea
.vscode
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailPlugin/bin
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailPlugin/obj
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailPlugin.IntegrationTests/bin/
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailPlugin.IntegrationTests/obj
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailPluginUtility/bin
/ide_plugins/vs/vs2015/SourcetrailPlugin/SourcetrailPluginUtility/obj
/ide_plugins/vs/vs2015/SourcetrailPlugin/VCProjectEngineWrapperInterfaces/bin
/ide_plugins/vs/vs2015/SourcetrailPlugin/VCProjectEngineWrapperInterfaces/obj
/ide_plugins/vs/vs2015/SourcetrailPlugin/VCProjectEngineWrapper/bin
/ide_plugins/vs/vs2015/SourcetrailPlugin/VCProjectEngineWrapper/obj
/ide_plugins/vs/vs2015/SourcetrailPlugin/VCProjectEngineWrapperFactories/bin
/ide_plugins/vs/vs2015/SourcetrailPlugin/VCProjectEngineWrapperFactories/obj
/ide_plugins/vs/vs2015/SourcetrailPlugin/TestResults
*.coatidb
*.srctrldb
*.srctrlbm
*.suo
*.vcxproj.user
*.sqlite
*.pch
*.swp
*.swo
*.VC.db
.clang_complete
.ycm_extra_conf.py
.ycm_extra_conf.pyc
sourcetrail.srctrlprj
compile_commands.json
Makefile
CMakeLists.txt.user*
/__pycache__/
/deployment/windows/wixSetup/bin
/deployment/windows/wixSetup/build
/deployment/windows/wixSetup/CustomActions/UninstallRemoveLogFolder/bin
/deployment/windows/wixSetup/CustomActions/UninstallRemoveLogFolder/obj
/deployment/windows/wixSetup/Setup/build/Setup/Release
/deployment/windows/wixSetup/Setup/build/Setup/x64
+94
View File
@@ -0,0 +1,94 @@
.script_template: &script_definition
script:
- ./script/setup.sh
- ./script/buildonly.sh all
- ./script/buildonly.sh package
- ./build/Release/app/Sourcetrail --licenseFile ./setup/license.txt
- cd ./bin/test
- ../../build/Release/test/Sourcetrail_test
Linux64:
image: st4ll1/coati_linux_64
stage: deploy
only:
- master
- triggers
<<: *script_definition
artifacts:
name: "$CI_JOB_NAME"
paths:
- Sourcetrail*.tar.gz
expire_in: 3 days
Linux64_tag:
image: st4ll1/coati_linux_64
stage: deploy
only:
- tags
<<: *script_definition
artifacts:
name: "$CI_JOB_NAME$CI_COMMIT_TAG"
paths:
- Sourcetrail*.tar.gz
Linux64_manual:
image: st4ll1/coati_linux_64
stage: deploy
except:
- master
when: manual
<<: *script_definition
artifacts:
name: "$CI_JOB_NAME"
paths:
- Sourcetrail*.tar.gz
Linux64_licenseGenerator:
image: st4ll1/coati_linux_64
stage: deploy
when: manual
script:
- ./script/setup.sh
- ./script/buildonly.sh r keygen
- mv build/Release/license_generator/Sourcetrail_license_generator .
artifacts:
name: "$CI_JOB_NAME"
paths:
- Sourcetrail_license_generator
expire_in: 3 days
Linux32:
image: st4ll1/coati_linux_32
stage: deploy
only:
- master
- triggers
<<: *script_definition
artifacts:
name: "$CI_JOB_NAME"
paths:
- Sourcetrail*.tar.gz
expire_in: 3 days
Linux32_tag:
image: st4ll1/coati_linux_32
stage: deploy
only:
- tags
<<: *script_definition
artifacts:
name: "$CI_JOB_NAME$CI_COMMIT_TAG"
paths:
- Sourcetrail*.tar.gz
Linux32_manual:
image: st4ll1/coati_linux_32
stage: deploy
except:
- master
when: manual
<<: *script_definition
artifacts:
name: "$CI_JOB_NAME"
paths:
- Sourcetrail*.tar.gz
+536 -141
View File
@@ -1,105 +1,312 @@
cmake_minimum_required(VERSION 2.8.9)
cmake_minimum_required(VERSION 3.1)
#set (CMAKE_VERBOSE_MAKEFILE ON)
set (BINARY_DIR ${CMAKE_BINARY_DIR})
include(cmake/add_files.cmake)
include(cmake/create_source_groups.cmake)
include(cmake/version.cmake)
include(cmake/version_setup.cmake)
include(cmake/licenses.cmake)
include(cmake/setWinXxBits.cmake)
# Variables --------------------------------------------------------------------
set(PROJECT_NAME Coati)
set(PROJECT_NAME Sourcetrail)
set(PROJECT_NAME_LOWER_CASE sourcetrail)
set(APP_PROJECT_NAME "${PROJECT_NAME}")
set(LIB_LICENSE_PROJECT_NAME "${PROJECT_NAME}_lib_license")
set(LIB_GUI_PROJECT_NAME "${PROJECT_NAME}_lib_gui")
set(LIB_CXX_PROJECT_NAME "${PROJECT_NAME}_lib_cxx")
set(LIB_JAVA_PROJECT_NAME "${PROJECT_NAME}_lib_java")
set(LIB_PROJECT_NAME "${PROJECT_NAME}_lib")
set(LICENSE_GENERATOR_PROJECT_NAME "${PROJECT_NAME}_license_generator")
set(TEST_PROJECT_NAME "${PROJECT_NAME}_test")
set (APP_INDEXER_NAME "${PROJECT_NAME_LOWER_CASE}_indexer")
if (WIN32)
set(PLATFORM_INCLUDE "includesWindows.h")
LINK_DIRECTORIES($ENV{VLD_DIR}/lib/Win32) # this adds the library path for VLD, must be done before the project target is created
# this adds the library path for VLD, must be done before the project target is created
if(${WINXXBITS} STREQUAL "Win32")
LINK_DIRECTORIES($ENV{VLD_DIR}/lib/Win32)
else()
LINK_DIRECTORIES($ENV{VLD_DIR}/lib/Win64)
endif()
elseif (APPLE)
set(PLATFORM_INCLUDE "includesMac.h")
else ()
set(PLATFORM_INCLUDE "includesDefault.h")
endif ()
# Settings ---------------------------------------------------------------------
if (UNIX)
add_definitions(-std=c++11 -Wno-unknown-warning-option -fcolor-diagnostics -DQT_COMPILING_QSTRING_COMPAT_CPP )
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32" CACHE STRING "c++ flags")
#set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32" CACHE STRING "c flags")
set(PLATFORM_INCLUDE "includesLinux.h")
endif ()
# Project ----------------------------------------------------------------------
project(${PROJECT_NAME})
# set Standard build type to Release
set(CMAKE_BUILD_TYPE_INIT "Release")
#RPATH
if(UNIX AND NOT APPLE)
set(CMAKE_SKIP_BUILD_RPATH FALSE)
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
set(CMAKE_INSTALL_RPATH "$ORIGIN/lib/:$$ORIGIN/lib/")
include(cmake/external.cmake)
endif()
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_C_STANDARD 99)
# Settings ---------------------------------------------------------------------
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-warning-option -fcolor-diagnostics")
endif()
# For debugging the release build on linux
#if (UNIX AND "${CMAKE_BUILD_TYPE}" STREQUAL "Release")
#add_definitions(-fno-omit-frame-pointer)
#endif ()
# Clang ------------------------------------------------------------------------
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build/share/llvm/cmake")
find_package(CLANG REQUIRED PATHS "${CMAKE_SOURCE_DIR}/cmake")
if (UNIX AND APPLE)
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build_release/lib/cmake/llvm" NO_DEFAULT_PATH)
else()
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build_debug/lib/cmake/llvm" NO_DEFAULT_PATH)
endif()
elseif(UNIX)
find_package(LLVM REQUIRED PATHS "$ENV{LLVM_DIR}/lib/cmake" )
else()
if(${WINXXBITS} STREQUAL "Win32")
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build_win32/lib/cmake/llvm")
else()
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build_win64/lib/cmake/llvm")
endif()
endif()
find_package(CLANG REQUIRED PATHS "${CMAKE_SOURCE_DIR}/cmake" NO_DEFAULT_PATH)
add_definitions(${CLANG_DEFINITIONS})
# Boost ------------------------------------------------------------------------
set(BOOST_ROOT $ENV{BOOST_155_DIR})
set(Boost_USE_MULTITHREAD ON)
set(Boost_USE_STATIC_LIBS OFF)
set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_STATIC_RUNTIME OFF)
set(BOOST_LIBRARYDIR $ENV{BOOST_155_DIR})
find_package(Boost 1.55 COMPONENTS system filesystem date_time REQUIRED)
set(BOOST_LIBRARYDIR $ENV{BOOST_159_DIR})
# Eigen -------------------------------------------------------------------------
if(UNIX AND NOT APPLE)
set(BOOST_ROOT $ENV{BOOST_DIR})
elseif(UNIX AND APPLE)
set(BOOST_ROOT $ENV{BOOST_159_DIR})
set(Boost_NO_SYSTEM_PATHS ON)
else()
STRING(REGEX REPLACE "\\\\" "/" BOOST_LIBRARYDIR ${BOOST_LIBRARYDIR})
if(${WINXXBITS} STREQUAL "Win32")
set(BOOST_ROOT "${BOOST_LIBRARYDIR}/win32")
else()
set(BOOST_ROOT "${BOOST_LIBRARYDIR}/win64")
endif()
set(Boost_NO_SYSTEM_PATHS ON)
endif()
find_package(Boost 1.59 COMPONENTS system program_options filesystem date_time REQUIRED)
# Botan -------------------------------------------------------------------------
set(BOTAN_VERSION "botan-1.11" "botan-2")
if(APPLE)
find_library(BOTAN ${BOTAN_VERSION} $ENV{BOTAN_DIR}/release NO_DEFAULT_PATH)
find_library(BOTAN_D ${BOTAN_VERSION} $ENV{BOTAN_DIR}/debug NO_DEFAULT_PATH)
elseif(UNIX)
find_library(BOTAN
NAMES ${BOTAN_VERSION}
HINTS "$ENV{BOTAN_DIR}/lib")
else()
if(${WINXXBITS} STREQUAL "Win32")
find_library(BOTAN botan "$ENV{BOTAN_DIR}/win32/release")
find_library(BOTAN_D botan "$ENV{BOTAN_DIR}/win32/debug")
else()
find_library(BOTAN botan "$ENV{BOTAN_DIR}/win64/release")
find_library(BOTAN_D botan "$ENV{BOTAN_DIR}/win64/debug")
endif()
endif()
message(STATUS "botanversion: ${BOTAN}")
if(${BOTAN} STREQUAL "BOTAN-NOTFOUND")
message(FATAL_ERROR "Botan not found")
else()
message(STATUS "Botan found")
endif()
if(UNIX AND NOT APPLE)
find_path(BOTAN_INCLUDE_DIR NAMES botan/botan.h
HINTS "$ENV{BOTAN_DIR}/include"
PATH_SUFFIXES ${BOTAN_VERSION}
DOC "The Botan include directory")
elseif(WIN32)
if(${WINXXBITS} STREQUAL "Win32")
set(BOTAN_INCLUDE_DIR "$ENV{BOTAN_DIR}/win32//build/include")
else()
set(BOTAN_INCLUDE_DIR "$ENV{BOTAN_DIR}/win64/build/include")
endif()
else()
set(BOTAN_INCLUDE_DIR "$ENV{BOTAN_DIR}/build/include")
endif()
if(NOT BOTAN_INCLUDE_DIR)
message(FATAL_ERROR "Botan include dir not found")
endif()
# Lib License -------------------------------------------------------------------
if (UNIX)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_BUILD_TYPE}/lib/")
else ()
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${CMAKE_BINARY_DIR}/${OUTPUTCONFIG}/lib/")
endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )
endif ()
add_subdirectory(src/lib_license)
add_library(${LIB_LICENSE_PROJECT_NAME} ${LIB_LICENSE_FILES})
create_source_groups(${LIB_LICENSE_FILES})
set_property(
TARGET ${LIB_LICENSE_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib_license"
)
target_include_directories(${LIB_LICENSE_PROJECT_NAME} SYSTEM
PUBLIC
${Boost_INCLUDE_DIRS}
${BOTAN_INCLUDE_DIR}
)
if(UNIX)
target_link_libraries(${LIB_LICENSE_PROJECT_NAME} ${BOTAN})
else()
link_directories(optimized "$ENV{BOTAN_DIR}/release")
link_directories(debug "$ENV{BOTAN_DIR}/debug")
target_link_libraries(${LIB_LICENSE_PROJECT_NAME} debug ${BOTAN_D})
target_link_libraries(${LIB_LICENSE_PROJECT_NAME} optimized ${BOTAN})
endif()
set(EIGEN_ROOT $ENV{EIGEN_DIR})
# Lib --------------------------------------------------------------------------
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib)
add_subdirectory(src/lib)
add_subdirectory(src/external)
set_source_files_properties(${CLANG_FILES} PROPERTIES COMPILE_FLAGS "-fno-rtti")
set_source_files_properties(${EXTERNAL_FILES} PROPERTIES COMPILE_FLAGS "-w")
set_source_files_properties(${EXTERNAL_C_FILES} PROPERTIES COMPILE_FLAGS "-std=gnu89 -w")
add_library(${LIB_PROJECT_NAME} ${LIB_FILES} ${CLANG_FILES} ${EXTERNAL_FILES})
add_library(${LIB_PROJECT_NAME} ${LIB_FILES} ${EXTERNAL_FILES} ${EXTERNAL_C_FILES})
create_source_groups(${LIB_FILES})
create_source_groups(${CLANG_FILES})
create_source_groups(${EXTERNAL_FILES})
set_target_properties(
${LIB_PROJECT_NAME}
PROPERTIES
DEBUG_OUTPUT_NAME ${PROJECT_NAME}_d
RELEASE_OUTPUT_NAME ${PROJECT_NAME}
)
create_source_groups(${EXTERNAL_C_FILES})
set_property(
TARGET ${LIB_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/external"
${LLVM_INCLUDE_DIRS}
${CLANG_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${EIGEN_ROOT}
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_BINARY_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/src/lib_cxx"
"${CMAKE_SOURCE_DIR}/src/lib_java"
)
target_include_directories(${LIB_PROJECT_NAME} SYSTEM
PUBLIC ${Boost_INCLUDE_DIR}
"${CMAKE_SOURCE_DIR}/src/external"
)
target_link_libraries(${LIB_PROJECT_NAME} ${Boost_LIBRARIES} ${LIB_LICENSE_PROJECT_NAME})
# Lib Cxx -------------------------------------------------------------------
add_subdirectory(src/lib_cxx)
add_library(${LIB_CXX_PROJECT_NAME} ${LIB_CXX_FILES})
create_source_groups(${LIB_CXX_FILES})
set_property(
TARGET ${LIB_CXX_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib_cxx"
"${CMAKE_SOURCE_DIR}/src/lib"
)
target_include_directories(${LIB_CXX_PROJECT_NAME} SYSTEM
PUBLIC ${LLVM_INCLUDE_DIRS}
${CLANG_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
)
link_directories(${LLVM_LIBRARY_DIRS} ${CLANG_LIBRARY_DIRS} ${Boost_LIBRARY_DIRS})
llvm_map_components_to_libnames(REQ_LLVM_LIBS support core libdriver passes)
target_link_libraries(${LIB_PROJECT_NAME} ${CLANG_LIBRARIES} ${LLVM_AVAILABLE_LIBS} ${Boost_LIBRARIES})
target_link_libraries(${LIB_CXX_PROJECT_NAME} ${CLANG_LIBRARIES} ${REQ_LLVM_LIBS})
# App --------------------------------------------------------------------------
if (WIN32)
target_link_libraries(${LIB_CXX_PROJECT_NAME} version)
endif()
if (UNIX)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/app/${CMAKE_BUILD_TYPE})
else ()
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/app/)
endif ()
# Lib Java -------------------------------------------------------------------
add_subdirectory(src/app)
find_package(JNI)
add_subdirectory(src/lib_java)
add_library(${LIB_JAVA_PROJECT_NAME} ${LIB_JAVA_FILES})
create_source_groups(${LIB_JAVA_FILES})
set_property(
TARGET ${LIB_JAVA_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib_java"
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
)
target_include_directories(${LIB_JAVA_PROJECT_NAME} SYSTEM
PUBLIC ${JNI_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
)
link_directories(${Boost_LIBRARY_DIRS})
target_link_libraries(${LIB_JAVA_PROJECT_NAME} ${LIB_PROJECT_NAME})
add_custom_command(
TARGET ${LIB_JAVA_PROJECT_NAME}
PRE_BUILD
COMMAND ${PROJECT_SOURCE_DIR}/script/update_java_indexer.sh
COMMENT "updating java indexer jars"
)
# Lib Gui ----------------------------------------------------------------------
add_subdirectory(src/lib_gui)
# Find includes in corresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON)
@@ -107,43 +314,215 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
# Find the QtWidgets library
set(CMAKE_PREFIX_PATH "$ENV{QT_DIR}/")
if(UNIX)
set(CMAKE_PREFIX_PATH "$ENV{QT_DIR}/")
if(APPLE)
set(Qt5Widgets_DIR "$ENV{QT_DIR}/cmake/Qt5Widgets/")
set(Qt5PrintSupport_DIR "$ENV{QT_DIR}/cmake/Qt5PrintSupport/")
endif()
else()
if(${WINXXBITS} STREQUAL "Win32")
set(CMAKE_PREFIX_PATH "$ENV{QT_WIN32_DIR}/")
else()
set(CMAKE_PREFIX_PATH "$ENV{QT_WIN64_DIR}/")
endif()
set(Qt5Widgets_DIR "${CMAKE_PREFIX_PATH}/lib/cmake/Qt5Widgets")
set(Qt5PrintSupport_DIR "${CMAKE_PREFIX_PATH}/lib/cmake/Qt5PrintSupport")
set(Qt5Network_DIR "${CMAKE_PREFIX_PATH}/lib/cmake/Qt5Network")
endif()
find_package(Qt5Widgets)
find_package(Qt5PrintSupport)
find_package(Qt5Network)
if(Qt5Widgets_FOUND)
MESSAGE(STATUS "Found Qt ${Qt5Widgets_VERSION_STRING}")
# FIX: Qt was built with -reduce-relocations
if (Qt5_POSITION_INDEPENDENT_CODE)
SET(CMAKE_POSITION_INDEPENDENT_CODE ON)
endif()
endif()
# target for running versionnumber script
# workaround for running customcommand (ninja dependency cycle)
add_custom_target(
versionnumber ALL
)
add_library(${LIB_GUI_PROJECT_NAME} ${LIB_GUI_FILES} ${CMAKE_BINARY_DIR}/src/lib_gui/version.h)
# command for versioning script
add_custom_command(
TARGET versionnumber
PRE_BUILD
COMMAND ${CMAKE_COMMAND} -DBINARY_DIR=${CMAKE_BINARY_DIR} -P ${CMAKE_SOURCE_DIR}/cmake/version.cmake
BYPRODUCTS ${CMAKE_BINARY_DIR}/src/lib_gui/version.h
DEPENDS ${LIB_GUI_PROJECT_NAME}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "check/update version number"
)
add_dependencies(${LIB_GUI_PROJECT_NAME} versionnumber)
create_source_groups(${LIB_GUI_FILES})
set_property(
TARGET ${LIB_GUI_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_cxx"
"${CMAKE_SOURCE_DIR}/src/lib_java"
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_BINARY_DIR}/src/lib_gui"
"${CMAKE_BINARY_DIR}/src/lib_license"
)
# include external header without warnings
target_include_directories(${LIB_GUI_PROJECT_NAME} SYSTEM
PUBLIC "${CMAKE_SOURCE_DIR}/src/external"
PUBLIC ${Boost_INCLUDE_DIRS}
)
# Use the Widgets module from Qt 5.
qt5_use_modules(${LIB_GUI_PROJECT_NAME} Widgets)
qt5_use_modules(${LIB_GUI_PROJECT_NAME} Network)
# configure platform specific include file
configure_file(
"${PROJECT_SOURCE_DIR}/src/lib_gui/platform_includes/includes.h.in"
"${PROJECT_BINARY_DIR}/src/lib_gui/includes.h"
)
#configure the versioning file
configure_file(
${CMAKE_SOURCE_DIR}/cmake/version.h.in
${CMAKE_BINARY_DIR}/src/lib_gui/version.h
)
# configure public key for the sourcetrail version
include(cmake/public_key.cmake)
set(CMAKE_AUTOMOC OFF)
# Indexer App ------------------------------------------------------------------
if (UNIX)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/app/")
else ()
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${CMAKE_BINARY_DIR}/${OUTPUTCONFIG}/app/")
endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )
endif ()
add_subdirectory(src/indexer)
# Find includes in corresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON)
add_executable(${APP_INDEXER_NAME} ${INDEXER_FILES})
if (WIN32)
file(WRITE ${CMAKE_SOURCE_DIR}/build/Coati.rc
# hide the console when running a release build.
set_target_properties(${APP_INDEXER_NAME} PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE /DEBUG:FASTLINK")
set_target_properties(${APP_INDEXER_NAME} PROPERTIES COMPILE_DEFINITIONS_DEBUG "_CONSOLE")
set_target_properties(${APP_INDEXER_NAME} PROPERTIES LINK_FLAGS_RELWITHDEBINFO "/SUBSYSTEM:CONSOLE")
set_target_properties(${APP_INDEXER_NAME} PROPERTIES COMPILE_DEFINITIONS_RELWITHDEBINFO "_CONSOLE")
set_target_properties(${APP_INDEXER_NAME} PROPERTIES LINK_FLAGS_RELEASE "/ENTRY:\"mainCRTStartup\" /SUBSYSTEM:WINDOWS /DEBUG")
set_target_properties(${APP_INDEXER_NAME} PROPERTIES LINK_FLAGS_MINSIZEREL "/SUBSYSTEM:WINDOWS")
# generate pdb for release build
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")
endif ()
create_source_groups(${INDEXER_FILES})
target_link_libraries(${APP_INDEXER_NAME} ${LIB_GUI_PROJECT_NAME} ${LIB_CXX_PROJECT_NAME} ${LIB_JAVA_PROJECT_NAME} ${LIB_PROJECT_NAME})
if (APPLE)
find_library(CORE_FOUNDATION CoreFoundation)
target_link_libraries(${APP_INDEXER_NAME} ${CORE_FOUNDATION})
endif ()
set_property(
TARGET ${APP_INDEXER_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/app"
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/src/lib_cxx"
"${CMAKE_SOURCE_DIR}/src/lib_java"
"${CMAKE_BINARY_DIR}/src/lib_gui"
"${CMAKE_BINARY_DIR}/src/lib_license"
)
# App --------------------------------------------------------------------------
if (UNIX)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/app/")
else ()
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${CMAKE_BINARY_DIR}/${OUTPUTCONFIG}/app/")
endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )
endif ()
add_subdirectory(src/app)
# Find includes in corresponding build directories
set(CMAKE_INCLUDE_CURRENT_DIR ON)
if (WIN32)
file(WRITE ${CMAKE_BINARY_DIR}/Sourcetrail.rc
"// Icon with lowest ID value placed first to ensure application icon\n"
"// remains consistent on all systems.\n"
"IDI_ICON1 ICON \"${CMAKE_SOURCE_DIR}/build/coati.ico\"\n"
"IDI_ICON1 ICON \"${CMAKE_BINARY_DIR}/Sourcetrail.ico\"\n"
)
add_executable(${APP_PROJECT_NAME} ${APP_FILES} ${CMAKE_SOURCE_DIR}/build/Coati.rc)
add_executable(${APP_PROJECT_NAME} ${APP_FILES} ${CMAKE_BINARY_DIR}/Sourcetrail.rc)
# hide the console when running a release build.
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE /DEBUG:FASTLINK")
set_target_properties(${APP_PROJECT_NAME} PROPERTIES COMPILE_DEFINITIONS_DEBUG "_CONSOLE")
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_RELWITHDEBINFO "/SUBSYSTEM:CONSOLE")
set_target_properties(${APP_PROJECT_NAME} PROPERTIES COMPILE_DEFINITIONS_RELWITHDEBINFO "_CONSOLE")
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_RELEASE "/ENTRY:\"mainCRTStartup\" /SUBSYSTEM:WINDOWS /DEBUG")
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_MINSIZEREL "/SUBSYSTEM:WINDOWS")
# generate pdb for release build
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi")
else ()
add_executable(${APP_PROJECT_NAME} ${APP_FILES})
endif ()
create_source_groups(${APP_FILES})
target_link_libraries(${APP_PROJECT_NAME} ${LIB_PROJECT_NAME})
target_link_libraries(${APP_PROJECT_NAME} ${LIB_GUI_PROJECT_NAME} ${LIB_CXX_PROJECT_NAME} ${LIB_JAVA_PROJECT_NAME} ${LIB_PROJECT_NAME} ${LIB_LICENSE_PROJECT_NAME})
set_property(
TARGET ${APP_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/app"
"${CMAKE_SOURCE_DIR}/build/src/app"
"${CMAKE_SOURCE_DIR}/src/external"
${Boost_INCLUDE_DIRS}
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/src/lib_cxx"
"${CMAKE_SOURCE_DIR}/src/lib_java"
"${CMAKE_BINARY_DIR}/src/lib_gui"
"${CMAKE_BINARY_DIR}/src/lib_license"
)
target_include_directories(${APP_PROJECT_NAME} SYSTEM
PUBLIC "${CMAKE_SOURCE_DIR}/src/external"
PUBLIC ${Boost_INCLUDE_DIRS}
)
# Use the Widgets module from Qt 5.
qt5_use_modules(${APP_PROJECT_NAME} Widgets)
# configure platform specific include file
configure_file(
"${PROJECT_SOURCE_DIR}/src/app/platform_includes/includes.h.in"
"${PROJECT_SOURCE_DIR}/build/src/app/includes.h"
)
qt5_use_modules(${APP_PROJECT_NAME} Network)
# add platform specific libraries
if (APPLE)
@@ -151,7 +530,8 @@ if (APPLE)
target_link_libraries(${APP_PROJECT_NAME} ${CORE_FOUNDATION})
endif ()
set(CMAKE_AUTOMOC OFF)
add_dependencies(${APP_PROJECT_NAME} ${APP_INDEXER_NAME})
# MacOSX Bundle ----------------------------------------------------------------
@@ -159,8 +539,9 @@ if (APPLE)
set(MACOSX_BUNDLE_NAME ${PROJECT_NAME})
set(MACOSX_BINARY_NAME ${APP_PROJECT_NAME})
set(MACOSX_INDEXER_BINARY_NAME ${APP_INDEXER_NAME})
set(MACOSX_DYNAMIC_LIBRARIES ${Boost_LIBRARIES} "${LLVM_LIBRARY_DIRS}/libLTO.dylib")
set(MACOSX_DYNAMIC_LIBRARIES "")
string(REPLACE ";" " " MACOSX_DYNAMIC_LIBRARIES "${MACOSX_DYNAMIC_LIBRARIES}")
get_property(QT_CORE_PATH TARGET ${Qt5Core_LIBRARIES} PROPERTY LOCATION)
@@ -175,7 +556,10 @@ if (APPLE)
get_property(QT_PRINT_PATH TARGET ${Qt5PrintSupport_LIBRARIES} PROPERTY LOCATION)
get_filename_component(QT_PRINT_PATH ${QT_PRINT_PATH} REALPATH)
list(APPEND MACOSX_QT_FRAMEWORKS ${QT_CORE_PATH} ${QT_GUI_PATH} ${QT_WIDGETS_PATH} ${QT_PRINT_PATH})
get_property(QT_NETWORK_PATH TARGET ${Qt5Network_LIBRARIES} PROPERTY LOCATION)
get_filename_component(QT_NETWORK_PATH ${QT_NETWORK_PATH} REALPATH)
list(APPEND MACOSX_QT_FRAMEWORKS ${QT_CORE_PATH} ${QT_GUI_PATH} ${QT_WIDGETS_PATH} ${QT_PRINT_PATH} ${QT_NETWORK_PATH})
string(REPLACE ";" " " MACOSX_QT_FRAMEWORKS "${MACOSX_QT_FRAMEWORKS}")
set(MACOSX_QT_DIR "$ENV{QT_DIR}")
@@ -194,12 +578,53 @@ if (APPLE)
endif ()
# License Generator --------------------------------------------------------
add_subdirectory(src/license_generator)
# configure private key for the sourcetrail version
include(cmake/private_key.cmake)
if (UNIX)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/license_generator/")
else ()
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${CMAKE_BINARY_DIR}/${OUTPUTCONFIG}/license_generator/")
endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )
endif ()
add_executable(${LICENSE_GENERATOR_PROJECT_NAME} ${LICENSE_GENERATOR_FILES} ${LICENSE_GENERATOR_MAIN})
create_source_groups(${LICENSE_GENERATOR_FILES})
set_property(
TARGET ${LICENSE_GENERATOR_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_BINARY_DIR}/src/license_generator"
"${CMAKE_BINARY_DIR}/src/lib_license"
)
target_include_directories(${LICENSE_GENERATOR_PROJECT_NAME} SYSTEM
PUBLIC ${Boost_INCLUDE_DIRS}
)
if(UNIX AND NOT APPLE)
target_link_libraries(${LICENSE_GENERATOR_PROJECT_NAME} pthread rt)
endif()
target_link_libraries(${LICENSE_GENERATOR_PROJECT_NAME} ${LIB_LICENSE_PROJECT_NAME} ${Boost_LIBRARIES} )
# CxxTest ----------------------------------------------------------------------
if (UNIX)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/test/${CMAKE_BUILD_TYPE})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/test/")
else ()
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/test/)
foreach( OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES} )
string( TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG )
set( CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${CMAKE_BINARY_DIR}/${OUTPUTCONFIG}/test/")
endforeach( OUTPUTCONFIG CMAKE_CONFIGURATION_TYPES )
endif ()
add_subdirectory(src/test)
@@ -210,21 +635,29 @@ set(TESTGEN_FILE ${CMAKE_CURRENT_BINARY_DIR}/test_main.cpp)
find_package(PythonInterp REQUIRED)
add_executable (${TEST_PROJECT_NAME} ${TESTGEN_FILE} ${TEST_FILES})
add_executable (${TEST_PROJECT_NAME} ${TESTGEN_FILE} ${TEST_FILES} ${LICENSE_GENERATOR_FILES})
create_source_groups(${TEST_FILES})
target_link_libraries(${TEST_PROJECT_NAME} ${LIB_PROJECT_NAME})
target_link_libraries(${TEST_PROJECT_NAME} ${LIB_CXX_PROJECT_NAME} ${LIB_JAVA_PROJECT_NAME} ${LIB_PROJECT_NAME} ${LIB_LICENSE_PROJECT_NAME} ${LIB_GUI_PROJECT_NAME})
find_package(CxxTest)
if (CXXTEST_FOUND)
set_property(
TARGET ${TEST_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib"
"${CXXTEST_INCLUDE_DIR}"
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_SOURCE_DIR}/src/lib_cxx"
"${CMAKE_SOURCE_DIR}/src/lib_java"
"${CMAKE_SOURCE_DIR}/src/external"
${Boost_INCLUDE_DIRS}
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_BINARY_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/src/license_generator"
"${CMAKE_BINARY_DIR}/src/license_generator"
"${Boost_INCLUDE_DIRS}"
)
endif (CXXTEST_FOUND)
@@ -233,14 +666,14 @@ if (WIN32)
add_custom_command(
TARGET ${TEST_PROJECT_NAME}
PRE_BUILD
COMMAND ${PYTHON_EXECUTABLE} ${CXXTEST_PYTHON_TESTGEN_EXECUTABLE} --runner=ParenPrinter -o ${TESTGEN_FILE} ${PROJECT_SOURCE_DIR}/src/test/*.h
COMMAND cd ${PROJECT_SOURCE_DIR} && ${PYTHON_EXECUTABLE} ${CXXTEST_PYTHON_TESTGEN_EXECUTABLE} --runner=ParenPrinter -o ${TESTGEN_FILE} ${TEST_FILES}
COMMENT "Generating unittest code with cxxtestgen"
)
add_custom_command(
TARGET ${TEST_PROJECT_NAME}
POST_BUILD
COMMAND cd $(ProjectDir)../bin/test/\n$(OutDir)$(TargetName)$(TargetExt)
COMMAND cd $(ProjectDir)../../bin/test/\n$(OutDir)$(TargetName)$(TargetExt)
COMMENT "Running unittest code"
)
@@ -248,89 +681,51 @@ elseif (UNIX)
add_custom_command(
OUTPUT ${TESTGEN_FILE}
PRE_BUILD
COMMAND cd ${PROJECT_SOURCE_DIR} && ${PYTHON_EXECUTABLE} ${CXXTEST_PYTHON_TESTGEN_EXECUTABLE} --runner=ParenPrinter -o ${TESTGEN_FILE} ${TEST_FILES}
#BYPRODUCTS ${TESTGEN_FILE}
DEPENDS ${TEST_FILES}
COMMENT "Generating unittest code with cxxtestgen"
)
add_custom_target(gen DEPENDS ${TESTGEN_FILE})
add_dependencies(${TEST_PROJECT_NAME} gen)
endif ()
# Visual Leak Detector ---------------------------------------------------------
if (WIN32)
include_directories($ENV{VLD_DIR}/include)
endif ()
# Linux package
if (UNIX)
# symlinks for data
message(STATUS "create symlink: "
"${CMAKE_SOURCE_DIR}/bin/app/data ->"
"${CMAKE_BINARY_DIR}/app/data")
execute_process(
COMMAND "${CMAKE_COMMAND}" "-E" "make_directory" "${CMAKE_BINARY_DIR}/app"
COMMAND "${CMAKE_COMMAND}"
"-E" "create_symlink"
"${CMAKE_SOURCE_DIR}/bin/app/data"
"${CMAKE_BINARY_DIR}/app/data"
COMMAND "${CMAKE_COMMAND}"
"-E" "create_symlink"
"${CMAKE_SOURCE_DIR}/bin/test/data"
"${CMAKE_BINARY_DIR}/test/data"
COMMAND "${CMAKE_COMMAND}"
"-E" "create_symlink"
"${CMAKE_SOURCE_DIR}/bin/app/user"
"${CMAKE_BINARY_DIR}/app/user"
)
if(UNIX AND NOT APPLE)
INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/bin/app/data
DESTINATION share/coati
)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/setup/Linux/coati.desktop
DESTINATION share/applications
)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/bin/app/data/gui/icon/logo_1024_1024.png
DESTINATION share/icons
RENAME coati.png)
INSTALL(FILES
${CMAKE_SOURCE_DIR}/setup/Linux/libedit.so.0.0.52
${CMAKE_SOURCE_DIR}/setup/Linux/libboost_filesystem.so.1.55.0
${CMAKE_SOURCE_DIR}/setup/Linux/libboost_system.so.1.55.0
${CMAKE_SOURCE_DIR}/setup/Linux/libboost_date_time.so.1.55.0
${CMAKE_SOURCE_DIR}/setup/Linux/libstdc++.so.6
${CMAKE_SOURCE_DIR}/setup/Linux/libpng16.so.16
${CMAKE_SOURCE_DIR}/setup/Linux/libQt5Core.so.5
${CMAKE_SOURCE_DIR}/setup/Linux/libQt5DBus.so.5
${CMAKE_SOURCE_DIR}/setup/Linux/libQt5Gui.so.5
${CMAKE_SOURCE_DIR}/setup/Linux/libQt5Widgets.so.5
${CMAKE_SOURCE_DIR}/setup/Linux/libicui18n.so.54
${CMAKE_SOURCE_DIR}/setup/Linux/libicuuc.so.54
${CMAKE_SOURCE_DIR}/setup/Linux/libpcre16.so.0
${CMAKE_SOURCE_DIR}/setup/Linux/libsystemd.so.0
${CMAKE_SOURCE_DIR}/setup/Linux/libicudata.so.54
${CMAKE_SOURCE_DIR}/setup/Linux/liblz4.so.1
${CMAKE_SOURCE_DIR}/setup/Linux/libgcrypt.so.20
${CMAKE_SOURCE_DIR}/setup/Linux/libgpg-error.so.0
DESTINATION share/coati/lib
)
INSTALL(FILES
${CMAKE_SOURCE_DIR}/setup/Linux/libqxcb.so
DESTINATION share/coati/platforms
)
INSTALL(PROGRAMS
${CMAKE_SOURCE_DIR}/setup/Linux/Coati.sh
DESTINATION share/coati
if (UNIX AND NOT APPLE)
# Create different sized icons
message(STATUS "create icons")
execute_process(
COMMAND "${CMAKE_SOURCE_DIR}/setup/Linux/createIcons.sh" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}"
)
# add the automatically determined parts of the RPATH
# which point to directories outside the build tree to the install RPATH
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
INSTALL(TARGETS ${APP_PROJECT_NAME}
DESTINATION share/coati
)
SET(CPACK_GENERATOR "DEB;TGZ")
# DEBIAN PACKAGE
SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "Andreas Stallinger <astallinger.mmt-m2013@fh-salzburg.ac.at>")
SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64")
SET(CPACK_PACKAGE_NAME "Coati")
SET(CPACK_PACKAGE_VERSION_MAJOR 0)
SET(CPACK_PACKAGE_VERSION_MINOR 1)
SET(CPACK_PACKAGE_VERSION_PATCH 2)
SET(CPACK_PACKAGE_EXECUTABLES "Coati")
INCLUDE(CPack)
endif ()
# Linux package
include(cmake/linux_package.cmake)
endif ()
endif ()
+664 -16
View File
@@ -1,28 +1,676 @@
### Masterproject
## Sourcetrail
#### Setup
### Setup
##### External Software
#### External Software
* QT 5.2.1
* JDK 1.8
* QT 5.8
* CxxTest 4.3
* Valgrind 3.9.0(linux, macOS)
* Clang & LLVM (installation guide http://clang.llvm.org/docs/LibASTMatchersTutorial.html)
* Boost 1.55 ()
* Eigen 3.2.3
* Valgrind 3.9.0 (linux)
* Clang & LLVM 3.9 (doesnt quite work for windows, use unix setup below and skip all the ninja stuff)(installation guide http://clang.llvm.org/docs/LibASTMatchersTutorial.html)
* Boost 1.59
* Botan 1.11.34
##### Environment Variables
also something about java, but who knows...
* QT_DIR - ...\Qt\Qt5.2.1\5.2.1\<IDE>\
* CXX_TEST_DIR - .../cxxtest-4.3/
* CLANG_DIR - .../clang-llvm/
* BOOST_155_DIR - .../boost_1_55_0
* EIGEN_DIR - .../eigen
#### Environment Variables
For Win32:
* CXX_TEST_DIR - .../cxxtest-4.3
* CLANG_DIR - .../clang-llvm
* BOOST_159_DIR - .../boost_1_59_0
* BOTAN_DIR - .../Botan-1.11.34
For MacOS and Linux
* QT_DIR - .../Qt/Qt5.8.0/5.8/<IDE>
For Windows:
* QT_WIN32_DIR - .../Qt/Qt5.8.0/win32/5.8/msvc2015<IDE>
* QT_WIN64_DIR - .../Qt/Qt5.8.0/win64/5.8/msvc2015_64<IDE>
* VLD_DIR - .../Visual Leak Detector
* path
- apped path to git.exe
- apped path to jdk/bin
- append path to VisualStudio/Common7/Tools
- append path to VisualStudio/Common7/IDE
##### Settings
##### Clang setup
For Windows:
Execute Cmake twice (once for each target compiler (32 and 64 bit)). Set the respective build path to ${CLANG_DIR}/build_win32 or ${CLANG_DIR}/build_win64
##### Boost setup
For Windows:
Build the Boost libs for 32 and 64 bit. Create the subdirectories ${BOOST_159_DIR}/win32 and ${BOOST_159_DIR}/win64 and copy the ${BOOST_159_DIR}/boost folder into each of those platform specific directories. Also move the platform specific libs into the respective ( ${BOOST_159_DIR}/win32/lib and ${BOOST_159_DIR}/win64/lib) folder.
##### Botan setup
For Windows
Extract the contents of your Botan package into "${BOTAN_DIR}/win32". Duplicate that folder and rename it "win64".
Build 32 bit debug lib in ${BOTAN_DIR}/win32/debug
$ python configure.py --cc=msvc --cpu=x86_32 --disable-shared --no-optimizations --with-debug-info
Build 32 bit release lib in ${BOTAN_DIR}/win32/release
$ python configure.py --cc=msvc --cpu=x86_32 --disable-shared
To build the 64 bit lib start the VS command prompt with the "amd64" argument as described here:https://msdn.microsoft.com/en-us/library/x4d2c09s.aspx
Build 64 bit debug lib in ${BOTAN_DIR}/win64/debug
$ python configure.py --cc=msvc --cpu=x86_64 --disable-shared --no-optimizations --with-debug-info
Build 64 bit release lib in ${BOTAN_DIR}/win64/release
$ python configure.py --cc=msvc --cpu=x86_64 --disable-shared
For MacOS and Linux
Build release lib in ${BOTAN_DIR}/release
Build debug lib in ${BOTAN_DIR}/debug
for Mac:
$ python configure.py --disable-shared --disable-modules=darwin_secrandom
for Linux:
$ python configure.py --disable-shared
#### Settings
Run setup script:
$ ./script/setup.sh
### Release
#### App
* create release build
* make sure it uses the Sourcetrail icon
* obfuscate the executable using upx
#### Data folder
* put data folder in working directory
* add empty log folder
* add working tictactoe.xml project to /projects/tictactoe with sources in /projects/tictactoe/src
* add empty app settings with one recent project tictactoe.xml
* leave window_settings.ini with correct Sourcetrail start layout
#### Package
* add app
#### Updating Clang on UNIX
$ cd .../clang_llvm
$ cd llvm
$ git pull origin master
$ cd tools/clang
$ git pull origin master
$ cd tools/extra/
$ git pull origin master
$ cd ../../../../../build_debug
$ cmake -G Ninja -DLLVM_ENABLE_RTTI=ON ../llvm
$ ninja -j4 check-all
$ cd ../release_build
$ cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_RTTI=ON ../llvm
$ ninja -j4 check-all
#### Remarks
* Boost lib dir: rename library directory for your system (e.g.: 'lib32-msvc-12.0') to 'lib'
### Tagging
$ git tag -a VERSION_NUMBER -m "DESCRIPTION"
$ git push --tags
### Loader gif creation from png sequence
// from png sequence
convert -delay 3 -loop 0 souretrail_*.png souretrail.gif
// less colors
gifsicle --colors 255 souretrail.gif > color.gif
// crop size
gifsicle --crop 0,5+0x-5 color.gif > crop.gif
// add transparency
gifsicle --unoptimize --disposal=previous --transparent="#FFFFFF" crop.gif > trans.gif
// resize
gifsicle --resize-height 18 trans.gif > loader.gif
### Changelog
#### 1.0 (beta)
released 2017-06-07
* Fixed issue where black borders appeared around dialogs for some Linux window managers (issue #376)
* Use platform default window decorations for UI dialogs
* Code: Made snippet minimize/maximize buttons more interactive by showing hover states
* Code: improved code view loading performance
* Java: Record more "import not found" errors
* Support Visual Studio 2017 in Visual Studio Plugin (issue #381)
* Graph: increased creation speed by requesting less data
* macOS: Codesign .app bundle to avoid "from unidentified developer" warning
* Error: Use same error order in error table and code view
* Error: Only show first 1000 errors, click button in lower right of error table to show all (issue #385)
* Graph: use bezier edges when activating aggregation edge
* Send ping after changing plugin ports
* Added menu action to display EULA and force accepting on macOS
* Fixed use of environment variables in project setup paths
* Multi-language project setup via Source Groups setup UI (issue #230)
* C/C++: Fixed no files indexed when relative file paths are provided in Compilation Database (issue #388)
* C/C++: Display an error when loading a Compilation Database fails
* C/C++: Fixed source files within Compilation Database not indexed unless within Indexed Header Paths
* Fixed status message length limiting window resizing (issue #372)
* Match source file extensions case insensitive (issue #384)
* Fixed indexing progress file count in status bar and status view (issue #387)
* Windows: remove setup.exe from windows installer with all necessary .dll files
* Added history list button between back and forward button
* Added history menu showing activated symbols in chronologic order
#### 0.12.25
released 2017-05-16
* Added QtCreator plugin
* Graph: Added context menu action to create bookmark for node under mouse cursor (issue #373)
* Code: Fixed code view not scrolled to first fulltext search match in single file mode
* Set unrestricted permission for accessing shared memory to fix crash on Windows
* Improved setting descriptions in preferences dialog
* Java: Updated to JavaParser 3.2.0 and JavaSymbolSolver 0.5.3
* Graph: Fixed order of nodes is same as within first encountered header file
* Save timestamp after project indexing and show it on the overview screen
* Fixed use of correct name delimiters in indexer processes
* Fixed crash when running 32 and 64 bit versions in parallel
* Bookmark: Changed menu action to "Bookmark Active Symbol"
* Graph: Zooming on Ctrl + Mouse Wheel now (Shift + Mouse Wheel still working)
* Added dialog to warn about "verbose indexer logging" before indexing.
* Added multi process indexing for C/C++ projects to better handle crashes during indexing.
* Reduced file accesses during C/C++ indexing.
* Graph: Show call graphs, inheritance trees and include trees for active symbol. UI in the top left of the graph view for defining direction and depth. (issues #249 #337)
* Improved performance by running UI updates in parallel for each view
* Fixed project refresh not recognizing newly added files
* Show progress dialog when clicking refresh while computing files (issue #341)
* Added show files button to summary of compilation database project setup (issue #354)
* Show option to run only C/C++ preprocessor when indexing on indexing start dialog (issue #297)
* Added bookmarking feature for nodes and edges. Bookmarks can have categories and comments. Data gets stored in .srctrlbm next to project file. Shortcuts similar to web browsers. (issue #138)
* Mark files with errors and all files within a translation unit with fatal errors as incomplete (issue #358)
* Fixed compilation database projects using C++ source extensions and standard (issue #366)
#### 0.11.86
released 2017-04-12
* Terminating all running tasks before closing the application (issue #343)
* Use all available cores when setting indexer threads to 0 (issue #342)
* Added reset window layout option to view menu (issue #289)
* Fixed colorscheme gets refreshed when cancelling preferences dialog
* Log: Scroll to first line in errors table after indexing and after display
* Copy old ApplicationSettings.xml and window_settings.ini files from previous Coati install if available.
* New projects are created with .srctrlprj and .srctrldb endings, but still support old file extensions.
* Renamed application from Coati to Sourcetrail
* Fixed issues in tutorial project
* Graph: Fixed node with no children but qualifier shows expand button
* Enable undo/redo actions in context menu only when available
* Java: Updated to JavaParser 3.1.2 and JavaSymbolSolver 0.5.2.x
* Revised undo/redo stack to handle messages differently
* Java: Added support for project setup from Maven
* Windows: Hide console when running release builds
* Show license information on start screen
* Added ping support to plugins and display current connected editor/IDE in status bar.
#### 0.11.15
released 2017-03-01
* Don't accept richt text in 'enter license' dialog field (issue #207)
* Updated EULA to include Test License and better clarify other license types
* Fixed icons in project setup dialogs blurry on highDPI screens
* Added link to additional downloadable pre-indexed projects to trial start screen
* Fixed crash when saving preferences if they contain relative paths
* Convert all paths chosen by patch picker relative to project location in project setup
* Disabled name and location changing in project editing and removed project moving
* Split default file extensions for C++ and C to avoid wrong files getting indexed
* Deprecated 'Lazy Include Search', it's only visible to previously created projects (issue #335)
* Support relative paths and paths containing environment variables for compilation database path (issue #312)
* Removed 'Advanced Settings' section in project setup and show theses options in separate dialog (#293)
* Support environment variables containing multiple files in project setup paths (issue #283)
* Warn users when no 'Indexed Header Paths' were set in compilation database project (issue #254)
* Renamed "Project Paths" to "Indexed Paths" in project setup
* Renamed "Project File Location" to "Coati Project Location" in project setup (issue #234)
* Allow opening indexed projects in trial mode
* Record node type of non-indexed qualifiers (e.g. "std" in "std::string" as namespace)
* Log: Fixed error icon loaded for every row (issue #287)
* Graph: Fixed lambda are placed within white area to better see call edges
* Graph: Show non-indexed nodes within their parents instead of using namespace labeling
* Code: Disabled syntax highlighting for project description
* Graph: Fixed different font-faces causing graph nodes to expand to bigger cell amount
* Mac: Fixed wrong READMEs at some plugins (issue #315)
* Mac: Removed boost libraries and libLTO from Mac bundle
* Windows: Add Visual Studio compatibility flags to new project when Visual Studio include paths are present
* Renamed undefined nodes to non-indexed nodes for clarification
* Show progress in file clearing dialog
* Extended syntax highlighting for Java and distinguish by project type
* offer Windows 64bit build (issue #300)
* Fixed legacy Java 6 install necessary on MacOS (issue #280)
* Updated to Qt 5.8
* Updated to clang/llvm 3.9
* Added multithreading to Visual Studio plugin compilation database creation
* Graph: Use new list layouting for overview bundles and namespaces/packages
* Graph: Group nodes in list layout by starting character and allow jumping to group by pressing the key
* Graph: Use node specific styles for overview bundles
* Visual Studio plugin can now handle projects with non-native build tool for compilation database export
* Changed menu action 'Licenses' to '3rd Party Licenses'
* Added dialog with all shortcuts to Help menu
* Log: Show error in errors table when clicked in code view (issue #323)
* Code: Switched default mouse drag behavior to selection, panning on Shift + drag, and show suitable cursors
* Updated company address in about dialog
* Graph: Added on-screen zoom buttons
* Graph: Split aggregation edge when expanding nodes if possible
* Uncommented lines using the std library in TicTacToe sample
* Fixed issue with lambda return type (issue #318)
* Save builtin types as separate node type (issue #2)
* Remove unused included files after refreshing
* Java: Fixed packages that only contain packages to show up as non-indexed
* Added context-menu actions to copy node names, file paths and show files in containing directory (issue #320)
* Fixed crash when entering a single space in 'enter license' dialog (issue #277)
* Graph: Made edge lines thicker
* Fixed handling and storing of files with the same name
* Fixed environment variable detection within project paths for %VARIABLE_NAME% syntax
* Coati states whether it needs 32bit or 64bit JRE
* Java: Updated indexer to fix a lot of unsolved symbol issues
* Graph: Fixed layouter couldn't handle nodes with same name
* Graph: Fixed weird looking vertical aggregation edges to child nodes
* Code: Don't show stats for non loaded project
* Added option to disable UI animations to preferences
* Graph: Removed double line around graph view on Mac
* Graph: Fixed namespace label cut off at edge of screen
* Code: Added single file view mode
* Code: Added navigation bar with mode toggle and buttons to navigate references
* Graph: Removed underscores in edge hover names
* Infere some non-indexed node types by their edges
#### 0.10.0
released 2016-12-13
* Windows: Added runtime DLLs that could be missing on some systems
* Click message in status bar to open status window
* Graph: Sort nodes alphabetically within each section
* Graph: Aggregate type use edges to make referencing nodes appear collapsed
* Code: Improved performance through faster source location retrieval for files
* Code: Scroll active symbol definition to top of view if possible
* Added status tab to Log View showing status bar information
* Graph: Fixed graph animation used when clicking edges
* Graph: Disable bundling when files or macros are active
* Graph: Bundle importing files of active symbol in Java projects
* Improved speed of depending file search on refresh
* Search: Fixed crashes related to empty searches (issue #251)
* Search: Do fulltext search when no autocompletion match is available
* Added checkbox for full project refresh to start indexing dialog
* Disabled clang error limit by default to make sure all errors are shown
* Linux: Updated libs and added missing ones (issue #245)
* Updated icons for some graph nodes and project types
* Windows: Updated Visual Studio plugin UI
* Graph: Fixed view to not recenter on active node when clicking edge
* Fixed wrong errors displayed, wrong error counts and error view being wrongly shown
* Removed font zoom on CTRL + MouseWheel
* Graph: Display namespace information on left side of nodes, activate namespace by clicking label
* Improved file clearing performance
* Windows: Changed setup folder layout
* Added info screen for indexer crash investigation
* Code: Fixed display of links to missing symbols in project description
* Code: Fixed snippet size calculation causing a slowdown in certain cases
* Search: Skip intermediate autocompletions when typing fast
* Show dialog for last files inserted into .coatidb at end of indexing
* Integrated Visual Studio Plugin with Coati Project creation and removed previous Visual Studio Solution parser
* Improved C++ indexer coverage: using decls, using directives, auto keyword, lambda signatures, symbol references inside lambda captures, template argument related elements
* Reduced size of .coatidb file by up to 50% for large projects
* Fixed anonymouse symbol name conflicts (issue #241)
* Preferences: Added Indexer Logging option to print AST information during indexing
* Search: Added second line to search autocompletion list showing namespace, package or filepath
* Made cells readonly in errors table to prevent editing (issue #236)
* Renamed Log Window to Status window
#### 0.9.23
released 2016-10-27
* Windows: Added logging and exception handling to VS plugin
* Windows: Added VC++ runtime dlls for windows installer
* Windows: Added missing VC++ runtime dlls (issue #231)
* Added setting for default graph zoom on mouse wheel to preferences (issue #237)
* Scroll errors table to newest error during indexing
* Fixed best scoring for search autocompletions skipped some combinations
* Fixed flickering of errors table when indexing
* Don't show error snippets in overview screen anymore
* Fixed crash when Project Paths contain files and lazy include search in enabled (issue #201)
* Fixed edge cases that caused deadlocks in indexing
* Added language specific project icons to start screen
* Fixed application couldn't be quit when start screen was showing (issue #227)
* Graph: Fixed missing image file ending when exporting graph for Linux
* Log Coati version when logging gets enabled
* Fixed non-indexed errors filter in errors table
#### 0.9.0
released 2016-10-14
* Extended Visual Studio Plugin to export clang Compilation Databases
* Implemented new installer for Windows
* Run System Header Include Paths and Java Path detection when starting application
* Added Log Window with Errors tab showing a table of all errors
* Added filters to bottom of error table to define which errors are displayed
* Removed ring logging and use one log file again instead
* Smaller indexing progress dialog with bar in the middle instead of golden ratio
* Code: Set default code snippet expand range to 3 lines for more context
* Graph: Fixed undoing of aggregation edge activation caused crash
* Graph: Move aggregation and inheritance edges to front when hovered or active
* Graph: Push parent nodes of active nodes to back to make all incoming and outgoing edges visible
* Properly quit application when window is closed while confirm box is open
* Properly quit application when window is closed while indexing (issue #121)
* Graph: Count only top level nodes in bundle nodes of graph
* Search: Improved scoring of autocompletion matches to use best score for match
* App will go into trial mode without valid license
* Java: Auto detect java root source directories
* Fixed refresh crash (issue #220)
* Java: improved indexer reliability a lot
* Java: Changed name of generic type to use name of declaration
* Fixed project refresh does not recognize removed source paths
* Java: Define maximum allocated jvm memory in preferences
* Follow symbolic directory links within source paths (issue #205)
* Use white size grip in blue dialogs
* Graph: Use type node colors for undefined nodes
* Java: Show import not found as error
* Code: Select and copy source code in code view with SHIFT + mouse drag (issue #7)
* Code: Added markers next to line numbers in code view showing active locations and scopes
* Merged app and trial to one build
#### 0.8.21
released 2016-09-16
* Added options for checking multiple paths in Indexed Header Paths dialog during project setup from Compilation Database #190
* Added all C/C++ standards supported by clang
* Fixed C language setting in empty project setup not propagated to indexer #177
* Added Sublime plugin to Sublime Text Package Control
* Improved indexer parallelization for faster indexing
* Changed all font-sizes to px for similar look on all platforms
* Added font face dropdown to Preferences showing all available monospace fonts #172
* Smoother font rendering on Windows by setting font engine to FreeType via qt.conf file #137
* Interrupt indexing while AST visiting for C/C++ for shorter waiting time
* Save graph as PNG image via context menu in graph view #180
* Added base folder to Linux package #181
* Use inverted golden ratio in indexing progress dialog
#### 0.8.0
released 2016-09-01
* Improved titles and help texts in project setup UI
* Fixed error locations not saved with absolute file paths in Compilation Database projects
* Added missing source files extensions setting to the Edit Project dialog #132
* Changed default text colors to black in project setup UI #140
* Added plugin ports settings to Preferences #145
* Improved project state handling on refreshing
* Added Java sample project JavaParser: http://javaparser.org/
* Fixed regex for system includes used wrongly in syntax highlighter
* Added setting to disable file and console logging, default is off #157
* Added migrations between different ApplicationSettings versions
* Added auto detection for Java library to Preferences
* Removed auto refresh option from Search view
* Added progress dialogs for indexing and block UI #143
* Hide name qualifiers for graph nodes in Java projects
* Added handling when java library not found
* Added plain text editing dialog to path list boxes
* Use language dependent symbol name delimiter in UI
* Added scroll speed setting to preferences #112
* Added Java project setup UI
* Record start and end locations of scopes in Java
* Display unresolved types names in Java as 'unresolved-type'
* Cache stats for overview to speed up display
* Fixed graph nodes to restore their expand state when going back #118
* Added shortcuts for navigating to next and previous reference in code view
* Pressing Tab in search completes up to next ::, Delete erases to last :: #133
* Bundle anonymous namespaces separately in graph overview #126
* Added 'Show Data Folder' and 'Show Log Folder' items to Help menu
* Added new status bar loader gif with higher resolution
* Record type aliases in C++
* Added Java indexer
* Changed public icon in graph and added default icon
* Scroll to file location when finding no symbol at specified location from plugin message
* Added shortcut for Preferences on Windows/Linux
* Leave code view at original line when expanding scopes
* Pan graph view to center on name of active symbol after activation
* Moved color scheme selection to Preferences
* Moved Preferences menu item to Edit menu on Windows/Linux #113
* Added setting for hiding non-fatal errors in unindexed files to preferences, turned on by default
* Fixed file out-of-date asterisk disappearing when showing snippets after minimize state
* Implemented Atom plugin: https://github.com/CoatiSoftware/atom-coati
* Implemented CLion/IntelliJ plugin: https://github.com/CoatiSoftware/idea-coati
* Implemented Eclipse plugin: https://github.com/CoatiSoftware/eCoati
* Implemented emacs plugin: https://github.com/CoatiSoftware/emacs-coati
* Improved code view rendering times
* Don't show implicit nodes in search auto completion list
#### 0.7.0.22
released 2016-07-07
* Fixed detected global header search paths lost correct order and caused problems with #include_next directives
* Fixed MaxOSX build crashed on launch due to unknown command line option passed
* Removed 'Save Project' and 'Save Project As' actions from menu
* Fixed indexer getting stuck at 'building caches' when indexing is interrupted
* Fixed database not properly closed when errors appeared during indexing
* Fixed autocompletions popup flickering while typing
* Added resize grip to bottom right corner of every dialog window
* Fixed 'paths don't exist' dialog window getting too big with lots of paths shown
* Added context menu with 'back' and 'forward' actions available in all views
* Removed Clang compiler warnings from console output
* Added handling of project specific VS macros to VS solution parser
#### 0.7.0.0
released 2016-06-15
* Updated to clang 3.8
* Fixed crash in search autocompletion retrieval due to edge case in sorting
* Fixed size policies in code view to avoid global scrollbar
* Added full text search via search field: ?<query> for case-insensitive search, ??<query> for case-sensitive search
* Made initialization for full text search lazy: done on first full text search
* Defined full text search color in all color schemes
* Increased code view performance by caching file IDs and paths
* Added multithreaded indexing. Number of threads can be set in the Preferences UI, default is 4
* Reworked graph node bundling to only distinguish defined and undefined nodes in each bucket
* Made graph node sorting alphabetical and put bundles at end
* Changed code view snippet sorting to always show definition on top
* Fixed local symbols were not available within lambdas
* Added settings for font family, font size and tab with to Preferences UI
* Fixed VS solution parser issue with internal macros
* Removed header extensions, all included files within the project paths are now analyzed
* Fixed crash in sqlite when symbol name has special characters
* Improved code view performance by reducing amount of initially open code files
* Improved graph view performance through faster data retrieval and smarter structures
* Increased aggregation click speed with faster edge id retrieval
* Fixed png color profiles to avoid console warning: "libpng warning: iCCP: known incorrect sRGB profile"
* Fixed graph edge drawn wrong when leaving from child node of smaller node
* Fixed Sublime Text Plugin issue with wrong encoding
* Randomized source file order for multithreaded analysis to increase performance
* Show name of removed symbol when going back after refreshing
* Fixed macro definition not connected to file
* Fixed macro use not found in #ifdef, #ifndef, defined() and some expand cases
* Removed back and forward steps for some graph and code view manipulations
* Fixed code view style broken on Mac due to change of working directory when analyzing compilation database
* Added database optimization step after indexing to reduce database size by ~25%
* Fixed artifacts after graph view change by clearing view
* Fixed autocompletion list highlights at wrong location for long names
* Allow files and directories to be excluded from analysis in advanced settings for project setup
* Added Qt gif plugin to Mac Release so that loader gif in status bar is visible
* Added link to download page to start screen to remind users of updating once in a while
* Check if compilation database still exists before refreshing
* Added separate step for defining project name, project location and compiliation database to project setup
* Explain that the project stays up-to-date with the compilation databes on refresh in project setup UI
* Disregard source extensions when loading from compilation database
* Removed error logs in name resolver
* Added plugin for VIM: https://github.com/CoatiSoftware/vim-coati
#### 0.6.0.0
released 2016-04-27
* Smoother graph panning and zooming on keyboard using update loop
* Differentiate between explicit and implicit nodes and only show implicit nodes in the graph view when connected
* Improved file clearing performance on project refresh
* Show deleted projects on the start screen and show messagebox to delete them
* Show analysis duration in hh:mm:ss
* Added suppport for temporary test licenses and show error message when it expired
* Increased graph performance by reducing to fixed number of requests
* Add vs-clang compatibility flags when creating project from Visual Studio solution
* Increased graph edge drawing performance
* Added auto detection for system header paths to project wizard and preferences when using gcc, clang or vs compilers
* Added bug tracker to help menu
* Increased search autocompletion performance to stay mostly below 100ms
* Changed style of aggregation edge to cleaner look
* Allow certain edge types to enter and leave at top and bottom of nodes as well e.g. inheritance
* Increased project load performance
* Increased graph creation performance for overview screen
* Changed namespace activation to show the namespace name in the search bar and the namespace definitions in the code view
* Updated to Qt 5.6
* Added analysis for local symbols and allow selecting them in the code view
* Improved error display performance by not expanding all of them at once
* Added home button next to search field for showing the project overview
* Added shortcut and menu item to show project overview
* Fixed Path boxes not sized correctly when switching back and forth in the project wizard
* Allow support for environment variables in project setup with syntax ${VARIABLE_NAME}
* Show quit button on license enter screen when no valid license was entered yet
* Allow color schemes to define text colors for code view highlights
* Added support for function pointers to analysis
* Added Windows system dlls to installer on Windows so users don't not need to install the redistributable package
* Changed style of out-of-date files to be followed by *
* Set Qt flag for high DPI scaling
* Check analyzed paths for existence in project wizard
* Inform the user about project changes and ask before reparsing the project
* Removed "simple setup" step in project wizard and added "lazy include search"-checkbox
* Edit the project settings by clicking the project name in the overview stats
* Added welcome message to Coati trial
* Defined new highlight colors for code view in all color schemes
#### 0.5.1.21
released 2016-03-16
* Fixed file logger using wrong directory for first log file
* Fixed crash when accessing files without read permission
* Center windows on top of main window
* Added font size limits
* Prevent network message handling without valid license
* Fixed type references in headers saved multiple times
* Improved context detection for template parameters
* Fixed Visual Studio plugin project loading
* Added delay for changing fontsize via mouse wheel
* Disabled config file warnings
* Fixed interrupting of analysis to show message in status bar
* Fixed children on namespace activation were bundled
* Fixed expanding file with errors showed all locations in red
* Show loader animation when loading project
* Removed high traffic log messages
* Fixed crash when opening newer project with older version of Coati
* Fixed project paths are now saved relative if defined relative
* Fixed project setup window sizes to adapt to content size
* Fixed linux package creating ~/.config if not there
* Show fatal errors in UI that stopped analysis
* Added compiler flags UI to advanced settings in project setup summary
* Added file extension UI to advanced settings in project setup summary
* Added graph zooming with Shift + mouse wheel or Shift + WS
* Added graph panning with WASD
* Improved project load and code view performance
* Improved analysis performance for large projects (10x as fast for 1.000.000 LoC)
* Added project setup for Compilation Databases
#### 0.5.0.4
released 2016-02-25
* Fixed preferences not saved
* Added link to documentation to Help menu
* Improved painting of icons in graph to be smoother
* Improved logging to alternate between 2 files of 1000 lines to decrease logfile sizes
* Improved analysis performance to take only 66% of the time
* Save user data in ~/Library/Application Support/Coati on Mac
* Improved style of ui windows
* Added Visual Studio solution parsing via project wizard or VS plugin
* Added project setup wizard for step-by-step project setup
* Added overview and error keywords to search view
* Show overview on project open with node bundles per type
* Added application move protection to reenter license key
* Improved log file names to be sorted chronologically
* Improved graph view node bundeling to bundle more
* Display scope name at bottom of code snippet
* Added .coatiproject file associations with icon for Mac and Windows
* Return to last scroll position when going back in code view
* Improved back & forward in code view
* Update error count while analysis
* Improved code view annotation painting performance
* Added web documentation
* Added trial target without analysis
* Added license key window and license checker
* Refresh project editing settings
* Added C and C++ standard setting to project
* Fixed cursor changing for resize and text interactions
* Added commandline option for project file
* Improved performance of token name saving
* Fixed number postions in graph
* Added shortcuts for font size resetting to View menu
* Added C support
* Added option to hide widget window title bars to View menu
#### 0.4.0
released 2016-01-07
* navigate back via backspace key
* navigate back&forward via mouse buttons
* renamed undo&redo to back&forward
* Fixed tooltip colors in dark color scheme
* Fixed style of function or method nodes with children
* Improved lambda handling in analysis
* Added help texts to project setup and preferences window
* Removed 'close window' action from menu
* Fixed constructors and destructors using return type 'void' withou source location
* Parse errors will be displayed as they appear during analysis
* Redesigned the about window
* Installing prerequisits in Windows Installer
* Added installer for Windows
* Introduced file endings .coatiproject and .coatidb for Coati's project files
* Removed Coati directory from Linux package
* Fixed graph font size was too small for Windows and Linux
* Show function and method signature in tooltip when hovering the graph node
* Added analysis for template parameter packs
* Fixed syntax highlighting to correctly identify strings, comments and block comments
* Fixed source locations of many declarations
* Coati shows a template's general definition when an implicit specialization is activated
* Added new color scheme called "bad_rainbow"
* Extended color schemes to allow more extensive use in the graph
* Coati now handles anonymous symbols when parsing files
* Improved handling of template arguments in analysis
* Coati can now handle inclass initialization of members
* Network ports for IDE communication can be defined in the ApplicationSettings.xml
#### 0.3.0
released 2015-12-14
* Saving all template arguments type uses
* Added recent projects menu option
* Focus all overlapping source locations in the code view
* Improved code view auto scroll to center the first active line in the middle
* Fixed search query disappeared when not token was found for it
* Fixed cursor was jumping at end of query when editing a search query
* Reworked code view highlighting
* Save comment locations and display them when right next to active symbol
* Fixed old data was still in new project window when creating another project
* Save macro scopes
* Save errors to storage and reactivate them via button in the status bar
* Fixed horizontal scroll in code view not activated while scrolling vertically
* Improved source locations of template scopes
* Save Coati version to sqlite and reparse project whenever the version changes
* Increased autocompletion performance by caching and limiting results to 100
* Added plugin for Sublime Text (2 & 3)
* Added plugin for Visual Studio (2012, 2013, 2015)
* Added communication interface from and to Coati via TCP sockets
* Added Tutorial project
@@ -0,0 +1,23 @@
Boost Software License - Version 1.0 - August 17th, 2003
Permission is hereby granted, free of charge, to any person or organization
obtaining a copy of the software and accompanying documentation covered by
this license (the "Software") to use, reproduce, display, distribute,
execute, and transmit the Software, and to prepare derivative works of the
Software, and to permit third-parties to whom the Software is furnished to
do so, all subject to the following:
The copyright notices in the Software and this entire statement, including
the above license grant, this restriction and the following disclaimer,
must be included in all copies of the Software, in whole or in part, and
all derivative works of the Software, unless such copies or derivative
works are solely in the form of machine-executable object code generated by
a source language processor.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,47 @@
Copyright (C) 1999-2013,2014,2015 Jack Lloyd
2001 Peter J Jones
2004-2007 Justin Karneges
2004 Vaclav Ovsik
2005 Matthew Gregan
2005-2006 Matt Johnston
2006 Luca Piccarreta
2007 Yves Jerschow
2007-2008 FlexSecure GmbH
2007-2008 Technische Universitat Darmstadt
2007-2008,2010,2014 Falko Strenzke
2007-2008 Martin Doering
2007 Manuel Hartl
2007 Christoph Ludwig
2007 Patrick Sona
2008 Copyright Projet SECRET, INRIA, Rocquencourt
2008 Bhaskar Biswas and Nicolas Sendrier
2008 Google Inc.
2010 Olivier de Gaalon
2012 Vojtech Kral
2012-2014 Markus Wanner
2013 Joel Low
2014 cryptosource GmbH
2014 Andrew Moon
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions, and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions, and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,62 @@
==============================================================================
LLVM Release License
==============================================================================
University of Illinois/NCSA
Open Source License
Copyright (c) 2007-2016 University of Illinois at Urbana-Champaign.
All rights reserved.
Developed by:
LLVM Team
University of Illinois at Urbana-Champaign
http://llvm.org
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal with
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimers.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimers in the
documentation and/or other materials provided with the distribution.
* Neither the names of the LLVM Team, University of Illinois at
Urbana-Champaign, nor the names of its contributors may be used to
endorse or promote products derived from this Software without specific
prior written permission.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
SOFTWARE.
==============================================================================
The LLVM software contains code written by third parties. Such software will
have its own individual LICENSE.TXT file in the directory in which it appears.
This file will describe the copyrights, license, and restrictions which apply
to that code.
The disclaimer of warranty in the University of Illinois Open Source License
applies to all code in the LLVM Distribution, and nothing in any of the
other licenses gives permission to use the names of the LLVM Team or the
University of Illinois to endorse or promote products derived from this
Software.
The following pieces of software have additional or alternate copyrights,
licenses, and/or restrictions:
Program Directory
------- ---------
<none yet>
@@ -0,0 +1,73 @@
The Code Project Open License (CPOL) 1.02
Preamble
========
This License governs Your use of the Work. This License is intended to allow developers to use the Source Code and Executable Files provided as part of the Work in any application in any form.
The main points subject to the terms of the License are:
* Source Code and Executable Files can be used in commercial applications;
* Source Code and Executable Files can be redistributed; and
* Source Code can be modified to create derivative works.
* No claim of suitability, guarantee, or any warranty whatsoever is provided. The software is provided "as-is".
* The Article accompanying the Work may not be distributed or republished without the Author's consent
This License is entered between You, the individual or other entity reading or otherwise making use of the Work licensed pursuant to this License and the individual or other entity which offers the Work under the terms of this License ("Author").
License
=======
THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CODE PROJECT OPEN LICENSE ("LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HEREIN, YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS OF THIS LICENSE. THE AUTHOR GRANTS YOU THE RIGHTS CONTAINED HEREIN IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS. IF YOU DO NOT AGREE TO ACCEPT AND BE BOUND BY THE TERMS OF THIS LICENSE, YOU CANNOT MAKE ANY USE OF THE WORK.
1. Definitions.
a. "Articles" means, collectively, all articles written by Author which describes how the Source Code and Executable Files for the Work may be used by a user.
b. "Author" means the individual or entity that offers the Work under the terms of this License.
c. "Derivative Work" means a work based upon the Work or upon the Work and other pre-existing works.
d. "Executable Files" refer to the executables, binary files, configuration and any required data files included in the Work.
e. "Publisher" means the provider of the website, magazine, CD-ROM, DVD or other medium from or by which the Work is obtained by You.
f. "Source Code" refers to the collection of source code and configuration files used to create the Executable Files.
g. "Standard Version" refers to such a Work if it has not been modified, or has been modified in accordance with the consent of the Author, such consent being in the full discretion of the Author.
h. "Work" refers to the collection of files distributed by the Publisher, including the Source Code, Executable Files, binaries, data files, documentation, whitepapers and the Articles.
i. "You" is you, an individual or entity wishing to use the Work and exercise your rights under this License.
2. Fair Use/Fair Use Rights. Nothing in this License is intended to reduce, limit, or restrict any rights arising from fair use, fair dealing, first sale or other limitations on the exclusive rights of the copyright owner under copyright law or other applicable laws.
3. License Grant. Subject to the terms and conditions of this License, the Author hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for the duration of the applicable copyright) license to exercise the rights in the Work as stated below:
a. You may use the standard version of the Source Code or Executable Files in Your own applications.
b. You may apply bug fixes, portability fixes and other modifications obtained from the Public Domain or from the Author. A Work modified in such a way shall still be considered the standard version and will be subject to this License.
c. You may otherwise modify Your copy of this Work (excluding the Articles) in any way to create a Derivative Work, provided that You insert a prominent notice in each changed file stating how, when and where You changed that file.
d. You may distribute the standard version of the Executable Files and Source Code or Derivative Work in aggregate with other (possibly commercial) programs as part of a larger (possibly commercial) software distribution.
e. The Articles discussing the Work published in any form by the author may not be distributed or republished without the Author's consent. The author retains copyright to any such Articles. You may use the Executable Files and Source Code pursuant to this License but you may not repost or republish or otherwise distribute or make available the Articles, without the prior written consent of the Author.
Any subroutines or modules supplied by You and linked into the Source Code or Executable Files of this Work shall not be considered part of this Work and will not be subject to the terms of this License.
4. Patent License. Subject to the terms and conditions of this License, each Author hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, import, and otherwise transfer the Work.
5. Restrictions. The license granted in Section 3 above is expressly made subject to and limited by the following restrictions:
a. You agree not to remove any of the original copyright, patent, trademark, and attribution notices and associated disclaimers that may appear in the Source Code or Executable Files.
b. You agree not to advertise or in any way imply that this Work is a product of Your own.
c. The name of the Author may not be used to endorse or promote products derived from the Work without the prior written consent of the Author.
d. You agree not to sell, lease, or rent any part of the Work. This does not restrict you from including the Work or any part of the Work inside a larger software distribution that itself is being sold. The Work by itself, though, cannot be sold, leased or rented.
e. You may distribute the Executable Files and Source Code only under the terms of this License, and You must include a copy of, or the Uniform Resource Identifier for, this License with every copy of the Executable Files or Source Code You distribute and ensure that anyone receiving such Executable Files and Source Code agrees that the terms of this License apply to such Executable Files and/or Source Code. You may not offer or impose any terms on the Work that alter or restrict the terms of this License or the recipients' exercise of the rights granted hereunder. You may not sublicense the Work. You must keep intact all notices that refer to this License and to the disclaimer of warranties. You may not distribute the Executable Files or Source Code with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License.
f. You agree not to use the Work for illegal, immoral or improper purposes, or on pages containing illegal, immoral or improper material. The Work is subject to applicable export laws. You agree to comply with all such laws and regulations that may apply to the Work after Your receipt of the Work.
6. Representations, Warranties and Disclaimer. THIS WORK IS PROVIDED "AS IS", "WHERE IS" AND "AS AVAILABLE", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES OR CONDITIONS OR GUARANTEES. YOU, THE USER, ASSUME ALL RISK IN ITS USE, INCLUDING COPYRIGHT INFRINGEMENT, PATENT INFRINGEMENT, SUITABILITY, ETC. AUTHOR EXPRESSLY DISCLAIMS ALL EXPRESS, IMPLIED OR STATUTORY WARRANTIES OR CONDITIONS, INCLUDING WITHOUT LIMITATION, WARRANTIES OR CONDITIONS OF MERCHANTABILITY, MERCHANTABLE QUALITY OR FITNESS FOR A PARTICULAR PURPOSE, OR ANY WARRANTY OF TITLE OR NON-INFRINGEMENT, OR THAT THE WORK (OR ANY PORTION THEREOF) IS CORRECT, USEFUL, BUG-FREE OR FREE OF VIRUSES. YOU MUST PASS THIS DISCLAIMER ON WHENEVER YOU DISTRIBUTE THE WORK OR DERIVATIVE WORKS.
7. Indemnity. You agree to defend, indemnify and hold harmless the Author and the Publisher from and against any claims, suits, losses, damages, liabilities, costs, and expenses (including reasonable legal or attorneys fees) resulting from or relating to any use of the Work by You.
8. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW, IN NO EVENT WILL THE AUTHOR OR THE PUBLISHER BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS LICENSE OR THE USE OF THE WORK OR OTHERWISE, EVEN IF THE AUTHOR OR THE PUBLISHER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
9. Termination.
a. This License and the rights granted hereunder will terminate automatically upon any breach by You of any term of this License. Individuals or entities who have received Derivative Works from You under this License, however, will not have their licenses terminated provided such individuals or entities remain in full compliance with those licenses. Sections 1, 2, 6, 7, 8, 9, 10 and 11 will survive any termination of this License.
b. If You bring a copyright, trademark, patent or any other infringement claim against any contributor over infringements You claim are made by the Work, your License from such contributor to the Work ends automatically.
c. Subject to the above terms and conditions, this License is perpetual (for the duration of the applicable copyright in the Work). Notwithstanding the above, the Author reserves the right to release the Work under different license terms or to stop distributing the Work at any time; provided, however that any such election will not serve to withdraw this License (or any other license that has been, or is required to be, granted under the terms of this License), and this License will continue in full force and effect unless terminated as stated above.
10. Publisher. The parties hereby confirm that the Publisher shall not, under any circumstances, be responsible for and shall not have any liability in respect of the subject matter of this License. The Publisher makes no warranty whatsoever in connection with the Work and shall not be liable to You or any party on any legal theory for any damages whatsoever, including without limitation any general, special, incidental or consequential damages arising in connection to this license. The Publisher reserves the right to cease making the Work available to You at any time without notice
11. Miscellaneous
a. This License shall be governed by the laws of the location of the head office of the Author or if the Author is an individual, the laws of location of the principal place of residence of the Author.
b. If any provision of this License is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this License, and without further action by the parties to this License, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable.
c. No term or provision of this License shall be deemed waived and no breach consented to unless such waiver or consent shall be in writing and signed by the party to be charged with such waiver or consent.
d. This License constitutes the entire agreement between the parties with respect to the Work licensed herein. There are no understandings, agreements or representations with respect to the Work not specified herein. The Author shall not be bound by any additional provisions that may appear in any communication from You. This License may not be modified without the mutual written agreement of the Author and You.
@@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@@ -0,0 +1,202 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@@ -0,0 +1,13 @@
Copyright 2014-2016 Javaslang, http://javaslang.io
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@@ -0,0 +1,141 @@
MOZILLA PUBLIC LICENSE
Version 1.1
1. Definitions.
1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party.
1.1. ''Contributor'' means each entity that creates or contributes to the creation of Modifications.
1.2. ''Contributor Version'' means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor.
1.3. ''Covered Code'' means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof.
1.4. ''Electronic Distribution Mechanism'' means a mechanism generally accepted in the software development community for the electronic transfer of data.
1.5. ''Executable'' means Covered Code in any form other than Source Code.
1.6. ''Initial Developer'' means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A.
1.7. ''Larger Work'' means a work which combines Covered Code or portions thereof with code not governed by the terms of this License.
1.8. ''License'' means this document.
1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein.
1.9. ''Modifications'' means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is:
A. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications.
B. Any new file that contains any part of the Original Code or previous Modifications.
1.10. ''Original Code'' means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License.
1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor.
1.11. ''Source Code'' means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge.
1.12. "You'' (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You'' includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control'' means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.
2. Source Code License.
2.1. The Initial Developer Grant.
The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims:
(a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and
(b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof).
(c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License.
(d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices.
2.2. Contributor Grant.
Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license
(a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and
(b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination).
(c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code.
(d) Notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor.
3. Distribution Obligations.
3.1. Application of License.
The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5.
3.2. Availability of Source Code.
Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party.
3.3. Description of Modifications.
You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code.
3.4. Intellectual Property Matters
(a) Third Party Claims.
If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained.
(b) Contributor APIs.
If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file.
(c) Representations.
Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License.
3.5. Required Notices.
You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer.
3.6. Distribution of Executable Versions.
You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer.
3.7. Larger Works.
You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code.
4. Inability to Comply Due to Statute or Regulation.
If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it.
5. Application of this License.
This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code.
6. Versions of the License.
6.1. New Versions.
Netscape Communications Corporation (''Netscape'') may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number.
6.2. Effect of New Versions.
Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Netscape. No one other than Netscape has the right to modify the terms applicable to Covered Code created under this License.
6.3. Derivative Works.
If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must (a) rename Your license so that the phrases ''Mozilla'', ''MOZILLAPL'', ''MOZPL'', ''Netscape'', "MPL", ''NPL'' or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.)
7. DISCLAIMER OF WARRANTY.
COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
8. TERMINATION.
8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive.
8.2. If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that:
(a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above.
(b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant.
8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license.
8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination.
9. LIMITATION OF LIABILITY.
UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
10. U.S. GOVERNMENT END USERS.
The Covered Code is a ''commercial item,'' as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of ''commercial computer software'' and ''commercial computer software documentation,'' as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein.
11. MISCELLANEOUS.
This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License.
12. RESPONSIBILITY FOR CLAIMS.
As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability.
13. MULTIPLE-LICENSED CODE.
Initial Developer may designate portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the MPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A.
EXHIBIT A -Mozilla Public License.
The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF
ANY KIND, either express or implied. See the License for the specific language governing rights and
limitations under the License.
The Original Code is Javassist.
The Initial Developer of the Original Code is Shigeru Chiba. Portions created by the Initial Developer are
Copyright (C) 1999- Shigeru Chiba. All Rights Reserved.
Contributor(s): __Bill Burke, Jason T. Greene______________.
Alternatively, the contents of this software may be used under the terms of the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), or the Apache License Version 2.0 (the "AL"), in which case the provisions of the LGPL or the AL are applicable instead of those above. If you wish to allow use of your version of this software only under the terms of either the LGPL or the AL, and not to allow others to use your version of this software under the terms of the MPL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the LGPL or the AL. If you do not delete the provisions above, a recipient may use your version of this software under the terms of any one of the MPL, the LGPL or the AL.
@@ -0,0 +1,174 @@
GNU LESSER GENERAL PUBLIC LICENSE
The Qt Toolkit is Copyright (C) 2015 The Qt Company Ltd.
Contact: http://www.qt.io/licensing/
You may use, distribute and copy the Qt Toolkit under the terms of
GNU Lesser General Public License version 3, which is displayed below.
This license makes reference to the version 3 of the GNU General
Public License, which you can find in the LICENSE.GPLv3 file.
-------------------------------------------------------------------------
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright © 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this
licensedocument, but changing it is not allowed.
This version of the GNU Lesser General Public License incorporates
the terms and conditions of version 3 of the GNU General Public
License, supplemented by the additional permissions listed below.
0. Additional Definitions.
As used herein, "this License" refers to version 3 of the GNU Lesser
General Public License, and the "GNU GPL" refers to version 3 of the
GNU General Public License.
"The Library" refers to a covered work governed by this License,
other than an Application or a Combined Work as defined below.
An "Application" is any work that makes use of an interface provided
by the Library, but which is not otherwise based on the Library.
Defining a subclass of a class defined by the Library is deemed a mode
of using an interface provided by the Library.
A "Combined Work" is a work produced by combining or linking an
Application with the Library. The particular version of the Library
with which the Combined Work was made is also called the "Linked
Version".
The "Minimal Corresponding Source" for a Combined Work means the
Corresponding Source for the Combined Work, excluding any source code
for portions of the Combined Work that, considered in isolation, are
based on the Application, and not on the Linked Version.
The "Corresponding Application Code" for a Combined Work means the
object code and/or source code for the Application, including any data
and utility programs needed for reproducing the Combined Work from the
Application, but excluding the System Libraries of the Combined Work.
1. Exception to Section 3 of the GNU GPL.
You may convey a covered work under sections 3 and 4 of this License
without being bound by section 3 of the GNU GPL.
2. Conveying Modified Versions.
If you modify a copy of the Library, and, in your modifications, a
facility refers to a function or data to be supplied by an Application
that uses the facility (other than as an argument passed when the
facility is invoked), then you may convey a copy of the modified
version:
a) under this License, provided that you make a good faith effort
to ensure that, in the event an Application does not supply the
function or data, the facility still operates, and performs
whatever part of its purpose remains meaningful, or
b) under the GNU GPL, with none of the additional permissions of
this License applicable to that copy.
3. Object Code Incorporating Material from Library Header Files.
The object code form of an Application may incorporate material from
a header file that is part of the Library. You may convey such object
code under terms of your choice, provided that, if the incorporated
material is not limited to numerical parameters, data structure
layouts and accessors, or small macros, inline functions and templates
(ten or fewer lines in length), you do both of the following:
a) Give prominent notice with each copy of the object code that
the Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the object code with a copy of the GNU GPL and this
license document.
4. Combined Works.
You may convey a Combined Work under terms of your choice that, taken
together, effectively do not restrict modification of the portions of
the Library contained in the Combined Work and reverse engineering for
debugging such modifications, if you also do each of the following:
a) Give prominent notice with each copy of the Combined Work that
the Library is used in it and that the Library and its use are
covered by this License.
b) Accompany the Combined Work with a copy of the GNU GPL and this
license document.
c) For a Combined Work that displays copyright notices during
execution, include the copyright notice for the Library among
these notices, as well as a reference directing the user to the
copies of the GNU GPL and this license document.
d) Do one of the following:
0) Convey the Minimal Corresponding Source under the terms of
this License, and the Corresponding Application Code in a form
suitable for, and under terms that permit, the user to
recombine or relink the Application with a modified version of
the Linked Version to produce a modified Combined Work, in the
manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.
1) Use a suitable shared library mechanism for linking with
the Library. A suitable mechanism is one that (a) uses at run
time a copy of the Library already present on the user's
computer system, and (b) will operate properly with a modified
version of the Library that is interface-compatible with the
Linked Version.
e) Provide Installation Information, but only if you would
otherwise be required to provide such information under section 6
of the GNU GPL, and only to the extent that such information is
necessary to install and execute a modified version of the
Combined Work produced by recombining or relinking the Application
with a modified version of the Linked Version. (If you use option
4d0, the Installation Information must accompany the Minimal
Corresponding Source and Corresponding Application Code. If you
use option 4d1, you must provide the Installation Information in
the manner specified by section 6 of the GNU GPL for conveying
Corresponding Source.)
5. Combined Libraries.
You may place library facilities that are a work based on the Library
side by side in a single library together with other library
facilities that are not Applications and are not covered by this
License, and convey such a combined library under terms of your
choice, if you do both of the following:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities, conveyed under the terms of this License.
b) Give prominent notice with the combined library that part of
it is a work based on the Library, and explaining where to find
the accompanying uncombined form of the same work.
6. Revised Versions of the GNU Lesser General Public License.
The Free Software Foundation may publish revised and/or new versions
of the GNU Lesser General Public License from time to time. Such new
versions will be similar in spirit to the present version, but may
differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
as you received it specifies that a certain numbered version of the
GNU Lesser General Public License "or any later version" applies to
it, you have the option of following the terms and conditions either
of that published version or of any later version published by the
Free Software Foundation. If the Library as you received it does not
specify a version number of the GNU Lesser General Public License,
you may choose any version of the GNU Lesser General Public License
ever published by the Free Software Foundation.
If the Library as you received it specifies that a proxy can decide
whether future versions of the GNU Lesser General Public License shall
apply, that proxy's public statement of acceptance of any version is
permanent authorization for you to choose that version for the Library.
@@ -0,0 +1,21 @@
www.sourceforge.net/projects/tinyxml
Original code (2.0 and earlier )copyright (c) 2000-2006 Lee Thomason (www.grinninglizard.com)
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any
damages arising from the use of this software.
Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it and
redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must
not claim that you wrote the original software. If you use this
software in a product, an acknowledgment in the product documentation
would be appreciated but is not required.
2. Altered source versions must be plainly marked as such, and
must not be misrepresented as being the original software.
3. This notice may not be removed or altered from any source
distribution.
@@ -1,117 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- BOOL: 0, 1 -->
<!-- INTEGER: int e.g 123 -->
<!-- DECIMAL: float e.g 123.456 -->
<!-- STRING: string e.g hello -->
<!-- COLOR: int int int int - rgba e.g. 125 125 125 255 -->
<config>
<StartupProject><!-- STRING: path to project settings xml file --></StartupProject>
<FilterUndefinedNodesFromGraph><!-- BOOL: filter out undefined nodes in graph --></FilterUndefinedNodesFromGraph>
<source>
<CompilerFlags>
<CompilerFlag><!-- STRING: compiler flag, including the dash e.g. -v --></CompilerFlag>
</CompilerFlags>
<HeaderSearchPaths>
<HeaderSearchPath><!-- STRING: header search path for each path a HeaderSearchPath element --></HeaderSearchPath>
</HeaderSearchPaths>
<!-- MAC ONLY -->
<FrameworkSearchPaths>
<FrameworkSearchPath><!-- STRING: framework search path --></FrameworkSearchPath>
</FrameworkSearchPaths>
</source>
<code>
<TabWidth><!-- INTEGER: number of spaces to represent a tab in code files --></TabWidth>
<FontName><!-- STRING: name of the font used for source view --></FontName> <!-- DEPRECATED -->
<FontSize><!-- INTEGER: size of the font in the source view --></FontSize> <!-- DEPRECATED -->
<snippet>
<snap_range><!-- INTEGER: max amount of lines that the current snippet will be extended to snap to scope start/end --></snap_range>
<expand_range><!-- INTEGER: amount of lines that the snippet range (not snapped) will be extended --></expand_range>
</snippet>
</code>
<colors>
<!-- QueryNodeType -->
<command>
<normal>#8FBC92</normal>
<hover>#5EA071</hover>
</command>
<operator>
<normal>#FCA47E</normal>
<hover>#F97A4E</hover>
</operator>
<!-- NodeType -->
<class>
<normal>#ededed</normal>
<hover>#ededed</hover>
</class>
<struct>
<normal>#ededed</normal>
<hover>#ededed</hover>
</struct>
<enum>
<normal>#ededed</normal>
<hover>#ededed</hover>
</enum>
<function>
<normal>#F4D07D</normal>
<hover>#F4BC3D</hover>
</function>
<method>
<normal>#F4D07D</normal>
<hover>#F4BC3D</hover>
</method>
<field>
<normal>#7BB5D4</normal>
<hover>#42A1D4</hover>
</field>
<global>
<normal>#7BB5D4</normal>
<hover>#42A1D4</hover>
</global>
<undefined>
<normal>#00000000</normal>
<hover>#00000000</hover>
</undefined>
<undefined_variable>
<normal>#7BB5D4</normal>
<hover>#42A1D4</hover>
</undefined_variable>
<undefined_function>
<normal>#F4D07D</normal>
<hover>#F4BC3D</hover>
</undefined_function>
<undefined_type>
<normal>#ededed</normal>
<hover>#ededed</hover>
</undefined_type>
<namespace>
<normal>#00000000</normal>
<hover>#00000000</hover>
</namespace>
<typedef>
<normal>#ededed</normal>
<hover>#ededed</hover>
</typedef>
<enum_constant>
<normal>#7BB5D4</normal>
<hover>#42A1D4</hover>
</enum_constant>
<template_parameter_type>
<normal>#ededed</normal>
<hover>#ededed</hover>
</template_parameter_type>
<file>
<normal>#88BAB3</normal>
<hover>#6AA39B</hover>
</file>
</colors>
</config>
+42 -22
View File
@@ -7,28 +7,48 @@
<!-- COLOR: int int int int - rgba e.g. 125 125 125 255 -->
<config>
<source>
<SourcePaths>
<SourcePath><!-- STRING: path to source file or directory, also used as header search path --></SourcePath>
</SourcePaths>
<version><!-- INTEGER: Version number --></version>
<CompilerFlags>
<CompilerFlag><!-- STRING: compiler flag, including the dash e.g. -v --></CompilerFlag>
</CompilerFlags>
<description><!-- STRING: optional description shown in overview. Symbols can be linked with syntax [main] --></description>
<HeaderSearchPaths>
<HeaderSearchPath><!-- STRING: header search path for each path a HeaderSearchPath element --></HeaderSearchPath>
</HeaderSearchPaths>
<!-- MAC ONLY -->
<FrameworkSearchPaths>
<FrameworkSearchPath><!-- STRING: framework search path --></FrameworkSearchPath>
</FrameworkSearchPaths>
<Extensions>
<HeaderExtensions><!-- STRING: extension for header/include e.g. .h --></HeaderExtensions>
<SourceExtensions><!-- STRING: extension for source e.g. .cpp --></SourceExtensions>
</Extensions>
</source>
<source_groups>
<source_group_xyz>
<type><!-- STRING: describes what kind of project this is, e.g. "C Source Group", "Java Source Group from Maven" --></type>
<standard><!-- STRING: language version, e.g. c++ '11' --></standard>
<source_paths>
<source_path><!-- STRING: path to source file or directory, also used as header search path --></source_path>
</source_paths>
<exclude_paths>
<exclude_path><!-- STRING: path to file or directory to exclude from analysis --></source_path>
</exclude_paths>
<source_extensions>
<source_extension><!-- STRING: extension for source e.g. .cpp --></source_extension>
</source_extensions>
<header_search_paths>
<header_search_path><!-- STRING: header search path for each path a header_search_path element --></header_search_path>
</header_search_paths>
<use_source_paths_for_header_search><!-- BOOL: If enabled all subfolder of the source paths will be used for header search --></use_source_paths_for_header_search>
<!-- begin MAC ONLY -->
<framework_search_paths>
<framework_search_path><!-- STRING: framework search path --></framework_search_path>
</framework_search_paths>
<!-- end MAC ONLY -->
<compiler_flags>
<compiler_flag><!-- STRING: compiler flag, including the dash e.g. -v --></compiler_flag>
</compiler_flags>
<build_file_path>
<vs_solution_path><!-- STRING: path to Visual Studio solution *.sln --></vs_solution_path>
<compilation_db_path><!-- STRING: path to Compilation Database --></compilation_db_path>
</build_file_path>
</source_group_xyz>
</source_groups>
</config>
+245
View File
@@ -0,0 +1,245 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
COLOR:
1. HEX RGB: #RRGGBB - e.g. #00FF00
2. HEX ARGB: #AARRGGBB - e.g. #5500FF00
3. Qt5 color name - e.g. white (http://doc.qt.io/qt-5/qcolor.html)
-->
<config>
<search>
<background></background>
<button>
<normal></normal>
<hover></hover>
<press></press>
<disabled></disabled>
<icon></icon>
</button>
<field>
<text></text>
<background></background>
<highlight></highlight>
</field>
<popup>
<text></text>
<by_text></by_text>
<background></background>
<highlight></highlight>
</popup>
<query>
<none>
<normal></normal>
<hover></hover>
</none>
<command>
<normal></normal>
<hover></hover>
</command>
<operator>
<normal></normal>
<hover></hover>
</operator>
</query>
</search>
<code>
<background></background>
<file>
<background></background>
<title>
<text></text>
<normal></normal>
<hover></hover>
<press></press>
<icon></icon>
</title>
<ref_count>
<text></text>
<background></background>
</ref_count>
</file>
<snippet>
<background></background>
<title>
<text></text>
<background></background>
<hover></hover>
</title>
<line_number>
<text></text>
<background></background>
</line_number>
<syntax>
<normal></normal>
<directive></directive>
<keyword></keyword>
<type></type>
<comment></comment>
<number></number>
<quotation></quotation>
<function></function>
</syntax>
<selection>
<location>
<normal>
<border></border>
<fill></fill>
</normal>
<focus>
<border></border>
<fill></fill>
</focus>
<active>
<border></border>
<fill></fill>
</active>
</location>
<scope>
<normal>
<border></border>
<fill></fill>
</normal>
<focus>
<border></border>
<fill></fill>
</focus>
<active>
<border></border>
<fill></fill>
</active>
</scope>
<error>
<normal>
<border></border>
<fill></fill>
</normal>
<focus>
<border></border>
<fill></fill>
</focus>
<active>
<border></border>
<fill></fill>
</active>
</error>
</selection>
</snippet>
</code>
<graph>
<background></background>
<node>
<!-- REQUIRED -->
<default>
<!-- NODE TEMPLATE-->
<like><!-- NODE TYPE NAME: Imitates the look of that node type. If defined all colors will be ignored --></like>
<fill>
<normal></normal>
<focus></focus> <!-- If not defined, the normal tag is used -->
</fill>
<border>
<normal></normal>
<focus></focus> <!-- If not defined, the normal tag is used -->
</border>
<text>
<normal></normal>
<focus></focus> <!-- If not defined, the normal tag is used -->
</text>
<icon>
<normal></normal>
<focus></focus> <!-- If not defined, the normal tag is used -->
</icon>
<hatching>
<normal></normal>
<focus></focus> <!-- If not defined, the normal tag is used -->
</hatching>
</default>
<!-- OPTIONAL: type specific node colors can be overriden by using the TEMPLATE within a type tag below -->
<type></type>
<builtin_type></builtin_type>
<class></class>
<interface></interface>
<struct></struct>
<enum></enum>
<typedef></typedef>
<template_parameter_type></template_parameter_type>
<type_parameter></type_parameter>
<function></function>
<method></method>
<field></field>
<global_variable></global_variable>
<enum_constant></enum_constant>
<undefined></undefined>
<namespace></namespace>
<package></package>
<file></file>
<macro></macro>
<access></access>
<bundle></bundle>
<count_number></count_number> <!-- The small circles with numbers in the graph -->
</node>
<edge>
<!-- REQUIRED -->
<default>
<!-- EDGE TEMPLATE-->
<like><!-- EDGE TYPE NAME: Imitates the look of that edge type. If defined all colors will be ignored --></like>
<normal></normal>
<focus></focus> <!-- If not defined, the normal tag is used -->
</default>
<!-- OPTIONAL: type specific edge colors can be overriden by using the TEMPLATE within a type tag below -->
<type_of></type_of>
<return_type></return_type>
<parameter_type></parameter_type>
<type_use></type_use>
<inheritance></inheritance>
<typedef></typedef>
<override></override>
<call></call>
<use></use>
<template_parameter></template_parameter>
<template_argument></template_argument>
<template_default_argument></template_default_argument>
<template_specialization></template_specialization>
<include></include>
<macro_use></macro_use>
<aggregation></aggregation>
</edge>
</graph>
<tool_tip>
<text></text>
<background></background>
</tool_tip>
</config>
+455
View File
@@ -0,0 +1,455 @@
<?xml version="1.0" encoding="utf-8"?>
<config>
<search>
<background>#494949</background>
<button>
<normal>#808080</normal>
<hover>#B1B1B1</hover>
<press>#CCCCCC</press>
<disabled>#606060</disabled>
<icon>white</icon>
<icon_disabled>#808080</icon_disabled>
</button>
<field>
<text>#FFFFFF</text>
<background>#808080</background>
<highlight>#B1B1B1</highlight>
</field>
<popup>
<text>#3D3D3D</text>
<by_text>#808080</by_text>
<background>#CCCCCC</background>
<highlight>#FFFFFF</highlight>
<line>#B1B1B1</line>
</popup>
<query>
<none>
<normal>
<fill>#B1B1B1</fill>
<text>#3D3D3D</text>
</normal>
<hover>
<fill>#CCCCCC</fill>
<text>#3D3D3D</text>
</hover>
</none>
<command>
<normal>
<fill>#86BD40</fill>
<text>#3D3D3D</text>
</normal>
<hover>
<fill>#9EC769</fill>
<text>#3D3D3D</text>
</hover>
</command>
<operator>
<normal>
<fill>#7D2724</fill>
<text>#3D3D3D</text>
</normal>
<hover>
<fill>#8C2B29</fill>
<text>#3D3D3D</text>
</hover>
</operator>
<fulltext>
<normal>
<fill>#C2AFEF</fill>
<text>#3D3D3D</text>
</normal>
<hover>
<fill>#AB96EA</fill>
<text>#3D3D3D</text>
</hover>
</fulltext>
</query>
</search>
<code>
<background>#494949</background>
<navigation>
<text>#A0A0A0</text>
<line>#CCCCCC</line>
</navigation>
<file>
<background>#CCCCCC</background>
<title>
<text>black</text>
<normal>#CCCCCC</normal>
<hover>#BBBBBB</hover>
<press>#AAAAAA</press>
<icon>black</icon>
<border>#B1B1B1</border>
<hatching>grey</hatching>
</title>
<ref_count>
<text>#C4C4C4</text>
<background>#494949</background>
</ref_count>
</file>
<snippet>
<background>#494949</background>
<title>
<text>#A0A0A0</text>
<background>transparent</background>
<hover>#2F2F2F</hover>
</title>
<line_number>
<text>#C4C4C4</text>
<inactive_text>#A0A0A0</inactive_text>
<background>#494949</background>
<marker>#C4C4C4</marker>
</line_number>
<syntax>
<normal>#C4C4C4</normal>
<directive>#00A0B6</directive>
<keyword>#00A0B6</keyword>
<type>#FF4A52</type>
<comment>#A0A0A4</comment>
<number>#EE7326</number>
<quotation>#D663D6</quotation>
<function>#FBBA00</function>
</syntax>
<selection>
<text>black</text>
<background>#CCCCCC</background>
</selection>
<annotation>
<token>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#EDEDED</border>
<fill>transparent</fill>
</focus>
<active>
<border>#EDEDED</border>
<fill>#EDEDED</fill>
<text>#262626</text>
</active>
</token>
<local_symbol>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#9BDAFF</border>
<fill>#A5DEFF</fill>
<text>#262626</text>
</focus>
<active>
<border>transparent</border>
<fill>#A5DEFF</fill>
<text>#262626</text>
</active>
</local_symbol>
<scope>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
</scope>
<error>
<normal>
<border>transparent</border>
<fill>#A0FF0000</fill>
<text>#000000</text>
</normal>
<focus>
<fill>#FFFF0000</fill>
</focus>
</error>
<fulltext>
<normal>
<fill>#C2AFEF</fill>
<text>#3D3D3D</text>
</normal>
<focus>
<fill>#987CEA</fill>
</focus>
</fulltext>
</annotation>
</snippet>
</code>
<graph>
<background>#494949</background>
<node>
<default>
<fill>
<normal>#807F80</normal>
</fill>
<border>
<normal>#FFFFFF</normal>
</border>
<text>
<normal>#3D3D3D</normal>
</text>
<icon>
<normal>#3D3D3D</normal>
</icon>
<hatching>
<normal>#494949</normal>
</hatching>
</default>
<type>
<border>
<normal>#20FFFFFF</normal>
<focus>#FFFFFF</focus>
</border>
<text>
<normal>#FFFFFF</normal>
</text>
<icon>
<normal>#FFFFFF</normal>
</icon>
</type>
<built_in_type>
<like>type</like>
</built_in_type>
<class>
<like>type</like>
</class>
<interface>
<like>type</like>
</interface>
<struct>
<like>type</like>
</struct>
<enum>
<like>type</like>
</enum>
<typedef>
<like>type</like>
</typedef>
<template_parameter_type>
<like>type</like>
</template_parameter_type>
<type_parameter>
<like>type</like>
</type_parameter>
<function>
<fill>
<normal>#FBBA00</normal>
<focus>#FFD05A</focus>
</fill>
<border>
<normal>transparent</normal>
<focus>#FFFFFF</focus>
</border>
<hatching>
<normal>#FFFFFF</normal>
</hatching>
</function>
<method>
<like>function</like>
</method>
<global_variable>
<fill>
<normal>#00A0B6</normal>
<focus>#3BAFB2</focus>
</fill>
<border>
<normal>transparent</normal>
<focus>#FFFFFF</focus>
</border>
<hatching>
<normal>#FFFFFF</normal>
</hatching>
</global_variable>
<field>
<like>global_variable</like>
</field>
<enum_constant>
<like>global_variable</like>
</enum_constant>
<non_indexed>
<like>type</like>
</non_indexed>
<namespace>
<fill>
<normal>#873E3E</normal>
</fill>
<border>
<normal>#80FFFFFF</normal>
<focus>#FFFFFF</focus>
</border>
<text>
<normal>#FFFFFF</normal>
</text>
<icon>
<normal>#FFFFFF</normal>
</icon>
</namespace>
<package>
<like>namespace</like>
</package>
<file>
<fill>
<normal>#4E82F6</normal>
<focus>#7FA9F4</focus>
</fill>
<border>
<normal>#20FFFFFF</normal>
<focus>#FFFFFF</focus>
</border>
<text>
<normal>#FFFFFF</normal>
</text>
<icon>
<normal>#FFFFFF</normal>
</icon>
<hatching>
<normal>#999999</normal>
</hatching>
</file>
<macro>
<like>file</like>
</macro>
<access>
<fill>
<normal>#CCCCCC</normal>
</fill>
</access>
<bundle>
<fill>
<normal>#494949</normal>
</fill>
<border>
<normal>#80FFFFFF</normal>
<focus>#FFFFFF</focus>
</border>
<text>
<normal>#FFFFFF</normal>
</text>
<icon>
<normal>#FFFFFF</normal>
</icon>
</bundle>
<count_number>
<fill>
<normal>#494949</normal>
</fill>
<border>
<normal>#CCCCCC</normal>
</border>
<text>
<normal>#CCCCCC</normal>
</text>
</count_number>
<qualifier>
<fill>
<normal>#873E3E</normal>
</fill>
<border>
<normal>#FFFFFF</normal>
</border>
<text>
<normal>#FFFFFF</normal>
</text>
</qualifier>
<text>
<fill>
<normal>transparent</normal>
</fill>
<text>
<normal>#B1B1B1</normal>
</text>
</text>
</node>
<edge>
<default>
<normal>#797979</normal>
</default>
<override>
<normal>#CC5E89</normal>
</override>
<call>
<normal>#FBBA00</normal>
<trail_focus>#FFFFFF</trail_focus>
</call>
<use>
<normal>#2A6484</normal>
</use>
<template_argument>
<normal>#C1305D</normal>
</template_argument>
<type_argument>
<like>template_argument</like>
</type_argument>
<template_default_argument>
<like>template_argument</like>
</template_default_argument>
<template_specialization>
<like>template_argument</like>
</template_specialization>
<template_member_specialization>
<like>template_argument</like>
</template_member_specialization>
<include>
<normal>#4E82F6</normal>
</include>
<macro_use>
<normal>#4E82F6</normal>
</macro_use>
<aggregation>
<normal>#5D5D5D</normal>
<focus>#6D6D6D</focus>
</aggregation>
</edge>
</graph>
<table>
<background>#494949</background>
<table>#C4C4C4</table>
<text>
<normal>#C4C4C4</normal>
<active>black</active>
</text>
<table_line_1>
<normal>#494949</normal>
<active>#7B7B7B</active>
</table_line_1>
<table_line_2>
<normal>#383838</normal>
<active>#7B7B7B</active>
</table_line_2>
</table>
<tab>
<background>#494949</background>
<active>#C4C4C4</active>
<hover>#878787</hover>
<text>#878787</text>
</tab>
</config>
+419
View File
@@ -0,0 +1,419 @@
<?xml version="1.0" encoding="utf-8"?>
<config>
<search>
<background>white</background>
<button>
<normal>#E0E0E0</normal>
<hover>#B2B2B2</hover>
<press>#626262</press>
<disabled>#F2F2F2</disabled>
<icon>white</icon>
<icon_disabled>#DEDEDE</icon_disabled>
</button>
<field>
<text>black</text>
<background>#E0E0E0</background>
<highlight>#B2B2B2</highlight>
</field>
<popup>
<text>black</text>
<by_text>#626262</by_text>
<background>white</background>
<highlight>#D0D0D0</highlight>
<line>#E0E0E0</line>
</popup>
<query>
<none>
<normal>
<fill>white</fill>
<text>black</text>
</normal>
<hover>
<fill>#F5F5F5</fill>
<text>black</text>
</hover>
</none>
<command>
<normal>
<fill>#8FBC92</fill>
<text>black</text>
</normal>
<hover>
<fill>#5EA071</fill>
<text>black</text>
</hover>
</command>
<operator>
<normal>
<fill>#FCA47E</fill>
<text>black</text>
</normal>
<hover>
<fill>#F97A4E</fill>
<text>black</text>
</hover>
</operator>
<fulltext>
<normal>
<fill>#C7C7E2</fill>
<text>black</text>
</normal>
<hover>
<fill>#ABABDD</fill>
<text>black</text>
</hover>
</fulltext>
</query>
</search>
<code>
<background>white</background>
<navigation>
<text>#B2B2B2</text>
<line>#B2B2B2</line>
</navigation>
<file>
<background>#E0E0E0</background>
<title>
<text>black</text>
<normal>#E0E0E0</normal>
<hover>#B2B2B2</hover>
<press>#626262</press>
<icon>black</icon>
<border>white</border>
<hatching>bright</hatching>
</title>
<ref_count>
<text>black</text>
<background>white</background>
</ref_count>
</file>
<snippet>
<background>white</background>
<title>
<text>#A0A0A0</text>
<background>transparent</background>
<hover>#F5F5F5</hover>
</title>
<line_number>
<text>black</text>
<inactive_text>#A0A0A0</inactive_text>
<background>white</background>
<marker>#A0A0A0</marker>
</line_number>
<syntax>
<normal>black</normal>
<directive>#1B8856</directive>
<keyword>#1B8856</keyword>
<type>#C1492D</type>
<comment>#1A801A</comment>
<number>#C1315E</number>
<quotation>#865F9E</quotation>
<function>#CC9533</function>
</syntax>
<selection>
<text>black</text>
<background>#E0E0E0</background>
</selection>
<annotation>
<token>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#8E8E8E</border>
<fill>transparent</fill>
</focus>
<active>
<border>#A0A0A0</border>
<fill>#A0A0A0</fill>
<text>#FFFFFF</text>
</active>
</token>
<local_symbol>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#AAE0FF</border>
<fill>#C6EAFF</fill>
</focus>
<active>
<border>transparent</border>
<fill>#C6EAFF</fill>
</active>
</local_symbol>
<scope>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
</scope>
<error>
<normal>
<border>transparent</border>
<fill>#80FF0000</fill>
<text>#000000</text>
</normal>
<focus>
<fill>#FFFF0000</fill>
</focus>
</error>
<fulltext>
<normal>
<fill>#C7C7E2</fill>
<text>#000000</text>
</normal>
<focus>
<fill>#ABABDD</fill>
</focus>
</fulltext>
</annotation>
</snippet>
</code>
<graph>
<background>white</background>
<node>
<default>
<fill>
<normal>#ededed</normal>
</fill>
<border>
<normal>#3C3C3C</normal>
</border>
<text>
<normal>black</normal>
</text>
<icon>
<normal>black</normal>
</icon>
<hatching>
<normal>white</normal>
</hatching>
</default>
<type>
<border>
<normal>#203C3C3C</normal>
<focus>#3C3C3C</focus>
</border>
</type>
<built_in_type>
<like>type</like>
</built_in_type>
<class>
<like>type</like>
</class>
<interface>
<like>type</like>
</interface>
<struct>
<like>type</like>
</struct>
<enum>
<like>type</like>
</enum>
<typedef>
<like>type</like>
</typedef>
<template_parameter_type>
<like>type</like>
</template_parameter_type>
<type_parameter>
<like>type</like>
</type_parameter>
<function>
<fill>
<normal>#F4D07D</normal>
<focus>#F4BC3D</focus>
</fill>
<border>
<normal>transparent</normal>
<focus>#3C3C3C</focus>
</border>
</function>
<method>
<like>function</like>
</method>
<global_variable>
<fill>
<normal>#7BB5D4</normal>
<focus>#42A1D4</focus>
</fill>
<border>
<normal>transparent</normal>
<focus>#3C3C3C</focus>
</border>
</global_variable>
<field>
<like>global_variable</like>
</field>
<enum_constant>
<like>global_variable</like>
</enum_constant>
<non_indexed>
<like>type</like>
</non_indexed>
<namespace>
<fill>
<normal>#EFC5C5</normal>
</fill>
<border>
<normal>#3D3D3D</normal>
<focus>black</focus>
</border>
<icon>
<normal>#3D3D3D</normal>
</icon>
</namespace>
<package>
<like>namespace</like>
</package>
<file>
<fill>
<normal>#DDD</normal>
<focus>#CCC</focus>
</fill>
<border>
<normal>#203C3C3C</normal>
<focus>#3C3C3C</focus>
</border>
</file>
<macro>
<like>file</like>
</macro>
<access>
<fill>
<normal>white</normal>
</fill>
</access>
<bundle>
<fill>
<normal>white</normal>
</fill>
<border>
<normal>#803C3C3C</normal>
<focus>#3C3C3C</focus>
</border>
</bundle>
<count_number>
<fill>
<normal>white</normal>
</fill>
<border>
<normal>#7C7C7C</normal>
</border>
<text>
<normal>#5C5C5C</normal>
</text>
</count_number>
<qualifier>
<fill>
<normal>#EFC5C5</normal>
</fill>
<border>
<normal>#3D3D3D</normal>
</border>
<text>
<normal>black</normal>
</text>
</qualifier>
<text>
<fill>
<normal>transparent</normal>
</fill>
<text>
<normal>#B2B2B2</normal>
</text>
</text>
</node>
<edge>
<default>
<normal>#878787</normal>
</default>
<override>
<normal>#CC5E89</normal>
</override>
<call>
<normal>#F4BC3D</normal>
<trail_focus>#878787</trail_focus>
</call>
<use>
<normal>#3190BA</normal>
</use>
<template_argument>
<normal>#C1305D</normal>
</template_argument>
<type_argument>
<like>template_argument</like>
</type_argument>
<template_default_argument>
<like>template_argument</like>
</template_default_argument>
<template_specialization>
<like>template_argument</like>
</template_specialization>
<template_member_specialization>
<like>template_argument</like>
</template_member_specialization>
<aggregation>
<normal>#DDD</normal>
<focus>#CCC</focus>
</aggregation>
</edge>
</graph>
<error>
<background>white</background>
</error>
<tab>
<background>white</background>
<active>black</active>
<hover>#878787</hover>
<text>#878787</text>
</tab>
<table>
<background>white</background>
<table>#aaa</table>
<text>
<normal>black</normal>
<active>white</active>
</text>
<table_line_1>
<normal>white</normal>
<active>grey</active>
</table_line_1>
<table_line_2>
<normal>#F1F1F1</normal>
<active>grey</active>
</table_line_2>
</table>
</config>
+426
View File
@@ -0,0 +1,426 @@
<?xml version="1.0" encoding="utf-8"?>
<config>
<search>
<background>#272728</background>
<button>
<normal>#777777</normal>
<hover>#555555</hover>
<press>#444444</press>
<disabled>#333333</disabled>
<icon>white</icon>
<icon_disabled>#777777</icon_disabled>
</button>
<field>
<text>#F7F7F7</text>
<background>#777777</background>
<highlight>#555555</highlight>
</field>
<popup>
<text>#F7F7F7</text>
<by_text>#A0A0A0</by_text>
<background>#272728</background>
<highlight>#333333</highlight>
<line>#444444</line>
</popup>
<query>
<none>
<normal>
<fill>#2F2F2F</fill>
<text>#F7F7F7</text>
</normal>
<hover>
<fill>black</fill>
<text>#F7F7F7</text>
</hover>
</none>
<command>
<normal>
<fill>#406D4D</fill>
<text>#F7F7F7</text>
</normal>
<hover>
<fill>#4E855E</fill>
<text>#F7F7F7</text>
</hover>
</command>
<operator>
<normal>
<fill>#7D2724</fill>
<text>#F7F7F7</text>
</normal>
<hover>
<fill>#8C2B29</fill>
<text>#F7F7F7</text>
</hover>
</operator>
<fulltext>
<normal>
<fill>#207EA8</fill>
<text>#F7F7F7</text>
</normal>
<hover>
<fill>#006D93</fill>
<text>#F7F7F7</text>
</hover>
</fulltext>
</query>
</search>
<code>
<background>#272728</background>
<navigation>
<text>#A0A0A0</text>
<line>#CCC</line>
</navigation>
<file>
<background>#777777</background>
<title>
<text>#F7F7F7</text>
<normal>#777777</normal>
<hover>#555555</hover>
<press>#444444</press>
<icon>white</icon>
<border>#272728</border>
<hatching>dark</hatching>
</title>
<ref_count>
<text>#F7F7F7</text>
<background>#272728</background>
</ref_count>
</file>
<snippet>
<background>#272728</background>
<title>
<text>#A0A0A0</text>
<background>transparent</background>
<hover>#2F2F2F</hover>
</title>
<line_number>
<text>#F7F7F7</text>
<inactive_text>#A0A0A0</inactive_text>
<background>#272728</background>
<marker>#969696</marker>
</line_number>
<syntax>
<normal>#F7F7F7</normal>
<directive>#1F9C62</directive>
<keyword>#1F9C62</keyword>
<type>#D95233</type>
<comment>#A0A0A4</comment>
<number>#CC3463</number>
<quotation>#9368AD</quotation>
<function>#D69C36</function>
</syntax>
<selection>
<text>white</text>
<background>#777777</background>
</selection>
<annotation>
<token>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#F7F7F7</border>
<fill>transparent</fill>
</focus>
<active>
<border>transparent</border>
<fill>#F7F7F7</fill>
<text>#272728</text>
</active>
</token>
<local_symbol>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#A0A0A0</border>
<fill>#969696</fill>
<text>#191919</text>
</focus>
<active>
<border>transparent</border>
<fill>#969696</fill>
<text>#272728</text>
</active>
</local_symbol>
<scope>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
</scope>
<error>
<normal>
<border>transparent</border>
<fill>#A0FF0000</fill>
<text>#000000</text>
</normal>
<focus>
<fill>#FFFF0000</fill>
</focus>
</error>
<fulltext>
<normal>
<fill>#207EA8</fill>
<text>#F7F7F7</text>
</normal>
<focus>
<border>#006D93</border>
<fill>#134B63</fill>
</focus>
</fulltext>
</annotation>
</snippet>
</code>
<graph>
<background>#272728</background>
<node>
<default>
<fill>
<normal>#4D4D4D</normal>
</fill>
<border>
<normal>#C3C3C3</normal>
</border>
<text>
<normal>#F7F7F7</normal>
</text>
<icon>
<normal>#F7F7F7</normal>
</icon>
<hatching>
<normal>#272728</normal>
</hatching>
</default>
<type>
<border>
<normal>#20C3C3C3</normal>
<focus>#C3C3C3</focus>
</border>
</type>
<built_in_type>
<like>type</like>
</built_in_type>
<class>
<like>type</like>
</class>
<interface>
<like>type</like>
</interface>
<struct>
<like>type</like>
</struct>
<enum>
<like>type</like>
</enum>
<typedef>
<like>type</like>
</typedef>
<template_parameter_type>
<like>type</like>
</template_parameter_type>
<type_parameter>
<like>type</like>
</type_parameter>
<function>
<fill>
<normal>#7A681F</normal>
<focus>#9C8528</focus>
</fill>
<border>
<normal>transparent</normal>
<focus>#C3C3C3</focus>
</border>
</function>
<method>
<like>function</like>
</method>
<global_variable>
<fill>
<normal>#21516B</normal>
<focus>#2A6484</focus>
</fill>
<border>
<normal>transparent</normal>
<focus>#C3C3C3</focus>
</border>
</global_variable>
<field>
<like>global_variable</like>
</field>
<enum_constant>
<like>global_variable</like>>
</enum_constant>
<non_indexed>
<like>type</like>
</non_indexed>
<namespace>
<fill>
<normal>#78282D</normal>
</fill>
<border>
<normal>#80C3C3C3</normal>
<focus>#C3C3C3</focus>
</border>
<icon>
<normal>#C3C3C3</normal>
</icon>
</namespace>
<package>
<like>namespace</like>
</package>
<file>
<fill>
<normal>#1B564E</normal>
<focus>#247368</focus>
</fill>
<border>
<normal>#20C3C3C3</normal>
<focus>#C3C3C3</focus>
</border>
</file>
<macro>
<like>file</like>
</macro>
<access>
<fill>
<normal>#272728</normal>
</fill>
</access>
<bundle>
<fill>
<normal>#272728</normal>
</fill>
<border>
<normal>#80C3C3C3</normal>
<focus>#C3C3C3</focus>
</border>
</bundle>
<count_number>
<fill>
<normal>#272728</normal>
</fill>
<border>
<normal>#C3C3C3</normal>
</border>
<text>
<normal>#F7F7F7</normal>
</text>
</count_number>
<qualifier>
<fill>
<normal>#78282D</normal>
</fill>
<border>
<normal>#C3C3C3</normal>
</border>
<text>
<normal>#F7F7F7</normal>
</text>
</qualifier>
<text>
<fill>
<normal>transparent</normal>
</fill>
<text>
<normal>#777777</normal>
</text>
</text>
</node>
<edge>
<default>
<normal>#797979</normal>
</default>
<override>
<normal>#CC5E89</normal>
</override>
<call>
<normal>#9C8528</normal>
<trail_focus>#F7F7F7</trail_focus>
</call>
<use>
<normal>#2A6484</normal>
</use>
<template_argument>
<normal>#C1305D</normal>
</template_argument>
<type_argument>
<like>template_argument</like>
</type_argument>
<template_default_argument>
<like>template_argument</like>
</template_default_argument>
<template_specialization>
<like>template_argument</like>
</template_specialization>
<template_member_specialization>
<like>template_argument</like>
</template_member_specialization>
<include>
<normal>#247368</normal>
</include>
<macro_use>
<normal>#247368</normal>
</macro_use>
<aggregation>
<normal>#3D3D3D</normal>
<focus>#4D4D4D</focus>
</aggregation>
</edge>
</graph>
<table>
<background>#272728</background>
<table>white</table>
<text>
<normal>white</normal>
<active>black</active>
</text>
<table_line_1>
<normal>darkgrey</normal>
<active>#969696</active>
</table_line_1>
<table_line_2>
<normal>#343434</normal>
<active>#969696</active>
</table_line_2>
</table>
<tab>
<background>#272728</background>
<active>white</active>
<hover>#878787</hover>
<text>#878787</text>
</tab>
</config>
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<config>
<application>
<window_base_width>500</window_base_width>
<window_base_height>500</window_base_height>
</application>
<indexing>
<indexer_thread_count>4</indexer_thread_count>
</indexing>
<user>
<recent_projects>
<recent_project>./projects/tutorial/tutorial.srctrlprj</recent_project>
<recent_project>./projects/tictactoe/tictactoe.srctrlprj</recent_project>
<recent_project>./projects/javaparser/javaparser.srctrlprj</recent_project>
</recent_projects>
</user>
<version>1</version>
</config>
@@ -0,0 +1,8 @@
[General]
DOCK_LOCATIONS=@ByteArray(\0\0\0\xff\0\0\0\0\xfd\0\0\0\x1\0\0\0\x2\0\0\x4\x83\0\0\x2\xb3\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x4\x90\0\0\0\0\0\xff\xff\xff\xfc\x2\0\0\0\x1\xfb\0\0\0\xe\0\x44\0o\0\x63\0k\0L\0o\0g\0\0\0\x2\xc6\0\0\0\xc1\0\0\0\0\0\0\0\0\xfc\0\0\0\0\0\0\x4\x83\0\0\x2\x46\0\xff\xff\xff\xfc\x2\0\0\0\x2\xfc\0\0\0\x16\0\0\x2\xb3\0\0\0\xa3\0\xff\xff\xff\xfc\x1\0\0\0\x2\xfc\0\0\0\0\0\0\x2P\0\0\x1\x65\0\xff\xff\xff\xfc\x2\0\0\0\x2\xfb\0\0\0\x14\0\x44\0o\0\x63\0k\0S\0\x65\0\x61\0r\0\x63\0h\x1\0\0\0\x16\0\0\0M\0\0\0\x44\0\xff\xff\xff\xfb\0\0\0\x12\0\x44\0o\0\x63\0k\0G\0r\0\x61\0p\0h\x1\0\0\0g\0\0\x2\x62\0\0\0[\0\xff\xff\xff\xfb\0\0\0\x10\0\x44\0o\0\x63\0k\0\x43\0o\0\x64\0\x65\x1\0\0\x2T\0\0\x2/\0\0\0\xdd\0\xff\xff\xff\xfb\0\0\0\x14\0\x44\0o\0\x63\0k\0S\0t\0\x61\0t\0u\0s\0\0\0\x2I\0\0\0\xcb\0\0\0\xcb\0\xff\xff\xff\0\0\x4\x83\0\0\0\0\0\0\0\x4\0\0\0\x4\0\0\0\b\0\0\0\b\xfc\0\0\0\0)
[MainWindow]
maximized=false
size=@Size(1200 800)
position=@Point(80 50)
showTitleBars=true
Binary file not shown.
Binary file not shown.
+45
View File
@@ -0,0 +1,45 @@
Copyright (c) 2014, Mozilla Foundation https://mozilla.org/ with Reserved Font Name Fira Sans.
Copyright (c) 2014, Telefonica S.A.
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others.
The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the copyright statement(s).
"Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment.
"Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission.
5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+201
View File
@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
@@ -0,0 +1,93 @@
Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries.
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
-----------------------------------------------------------
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
-----------------------------------------------------------
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the
copyright statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
"Author" refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining
a copy of the Font Software, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the Font
Software, subject to the following conditions:
1) Neither the Font Software nor any of its individual components,
in Original or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font
Name(s) unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
Software shall not be used to promote, endorse or advertise any
Modified Version, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the Author(s) or with their explicit written
permission.
5) The Font Software, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.
+9
View File
@@ -0,0 +1,9 @@
* {
color: white;
font-size: 14px;
font-weight: 100;
}
#window {
background: qlineargradient( x1:0 y1:0.4, x2:0 y2:1, stop:0 #2F3F86, stop:1 #1C7BBC );
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

@@ -0,0 +1,169 @@
/* Bookmark browser header */
#header_background {
background-color: #2E3C86;
}
#title {
color: white;
font-size: 18px;
font-weight: bold;
}
#filter_label, #order_label {
color: white;
font-size: 16px;
font-weight: bold;
margin-bottom: 5px;
}
#filter_box, #order_box {
/*margin-left: 20px;*/
}
/* Bookmark browser body */
#bookmark_tree {
border: none;
border-top: 1px solid #DFDFDF;
border-bottom: 1px solid #DFDFDF;
margin: 0px;
min-width: 500px;
min-height: 200px;
background-color: white;
}
/* Bookmark category */
#bookmark_category {
background: #DADADA;
border-bottom: 1px solid white;
padding: 4px 10px 3px 5px;
}
#bookmark_category:hover {
background: #DEDEDE;
}
#category_name {
color: black;
font-size: 12px;
margin-left: 1px;
}
#category_expand_button, #category_delete_button, #comment_button, #edit_button, #delete_button {
border: none;
background: transparent;
width: 20px;
height: 20px;
}
#edit_button {
margin-right: 3px;
}
/* Bookmark */
#bookmark {
padding: 3px 10px 3px 3px;
margin: 0;
background: white;
border-bottom: 1px solid #DFDFDF;
}
#bookmark_comment {
font-size: 12px;
padding: 3px 6px 3px 7px;
margin: 0;
color: #707070;
}
#activate_button {
background: white;
border: 2px solid white;
border-radius: 8px;
color: black;
font-size: 12px;
padding: 4px 8px 3px;
text-align: right;
}
#activate_button:hover {
border-color: #2D3C86;
}
#activate_button:pressed {
background: #CDD4F7;
}
#date_label {
margin: 1px 5px 0px;
font-size: 12px;
color: #707070;
}
/* Search bar buttons */
#bookmark_button, #show_bookmark_button {
background: <color:search/button/normal>;
border: none;
height: 30px;
width: 30px;
}
#bookmark_button:disabled, #show_bookmark_button:disabled {
background: <color:search/button/disabled>;
}
#bookmark_button:hover, #show_bookmark_button:hover {
background: <color:search/button/hover>;
}
#bookmark_button:pressed, #show_bookmark_button:pressed {
background: <color:search/button/press>;
}
#bookmark_button {
border-bottom-left-radius: 12px;
border-top-left-radius: 12px;
margin: 0px;
margin-right: 2px;
}
#show_bookmark_button {
border-bottom-right-radius: 12px;
border-top-right-radius: 12px;
margin: 0px;
}
/* Bookmark creator */
#creator_header_background {
background-color: #2E3C86;
}
#creator_title_label {
font-size: 18px;
font-weight: bold;
color: white;
}
#creator_label {
font-size: 14px;
font-weight: bold;
}
#creator_name_edit, #creator_comment_box {
border: 1px;
border-style: solid;
border-color: #dadada;
background: white;
border-radius: 12px;
min-height: 30px;
padding: 3px;
padding-left: 5px;
}
#creator_comment_box {
min-height: 160px;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 554 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1021 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 491 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 726 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1000 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 831 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 974 B

+158 -71
View File
@@ -1,109 +1,196 @@
#code_file_list {
background-color: white;
#code_navigation, #code_container, #code_file_list, #code_file_single {
background-color: <color:code/background>;
}
#code_container, #code_file_list {
border: none;
}
#separator_gap {
background-color: <color:code/background>;
border: none;
}
#separator_line {
background-color: <color:code/navigation/line>;
border: none;
}
#code_navigation * {
color: <color:code/file/title/text>;
font-size: <setting:font_size>px;
}
#code_navigation QPushButton {
background: <color:search/button/normal>;
border: none;
color: <color:search/button/icon>;
height: 24px;
width: 24px;
}
#code_navigation QPushButton:hover, #code_navigation QPushButton:checked {
background: <color:search/button/hover>;
}
#code_navigation QPushButton:disabled {
background: <color:search/button/disabled>;
}
#code_navigation QPushButton:pressed {
background: <color:search/button/press>;
}
#code_navigation #reference_button_previous {
border-bottom-left-radius: 11px;
border-top-left-radius: 11px;
}
#code_navigation #reference_button_next {
border-bottom-right-radius: 11px;
border-top-right-radius: 11px;
}
#code_navigation #references_label {
border: none;
border-radius: 10px;
color: <color:code/navigation/text>;
font-size: <setting:font_size>px;
padding: 0px 3px;
margin: 4px 6px 4px 6px;
}
#code_navigation #mode_button_list {
padding-left: 2px;
}
#code_navigation #mode_button_single {
padding-right: 2px;
}
#code_navigation #mode_button_list {
border-bottom-left-radius: 11px;
border-top-left-radius: 11px;
}
#code_navigation #mode_button_single {
border-bottom-right-radius: 11px;
border-top-right-radius: 11px;
}
#code_file {
background-color: white;
border: 2px solid #E0E0E0;
border-radius: 14px;
background-color: <color:code/snippet/background>;
border: 2px solid <color:code/file/background>;
border-radius: 12px;
font-size: <setting:font_size>px;
padding-bottom: 7px;
}
#code_file #title_widget {
background-color: #E0E0E0;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
margin-bottom: 5px;
min-height: 28px;
padding-right: 5px;
background-color: <color:code/file/background>;
border-top-left-radius: 7px;
border-top-right-radius: 7px;
font-size: <setting:font_size>px;
}
#code_file #title_label, #single_file_title_bar #file_title {
background-color: <color:code/file/title/normal>;
border: none;
border-radius: 3px;
color: <color:code/file/title/text>;
font-size: <setting:font_size>px;
padding: 2px 4px;
}
#code_file #title_label {
background: none;
margin: 1px 8px;
}
#single_file_title_bar #file_title {
margin: 3px 8px;
}
#code_file #title_label:hover, #single_file_title_bar #file_title:hover {
background-color: <color:code/file/title/hover>;
}
#code_file #title_label:pressed, #single_file_title_bar #file_title:pressed {
background-color: <color:code/file/title/press>;
}
#code_file #title_label[complete=false], #single_file_title_bar #file_title[complete=false] {
border: 1px solid <color:code/file/title/border>;
}
#code_file #references_label, #single_file_title_bar #references_label {
background-color: <color:code/file/ref_count/background>;
border: none;
border-radius: 3px;
font-size: 14px;
padding: 2px 4px;
margin: 2px 8px;
border-radius: 10px;
color: <color:code/file/ref_count/text>;
font-size: <setting:font_size-2>px;
padding: 0px 3px;
margin: 4px 6px 4px 0px;
}
#code_file #title_label:hover {
background-color: #D0D0D0;
}
#code_file #title_label:disabled {
color: black;
}
#code_file #code_snippet{
border-top: 2px solid #E0E0E0;
padding-top: 2px;
}
#code_file #code_snippet[isFirst=true] {
border: none;
padding-top: 0px;
#code_file #code_snippet {
background-color: <color:code/snippet/background>;
border-top: 2px solid <color:code/file/background>;
font-size: <setting:font_size>px;
}
#code_file #code_snippet #scope_name, #code_file #code_snippet #dots {
background: none;
color: gray;
background-color: <color:code/snippet/title/background>;
border: none;
font-family: "Source Code Pro";
font-size: 14px;
color: <color:code/snippet/title/text>;
font-family: "<setting:font_name>";
font-size: <setting:font_size>px;
}
#code_file #code_snippet #scope_name:hover {
background-color: <color:code/snippet/title/hover>;
}
#code_file #code_snippet #dots {
padding-right: 13px;
background-color: <color:code/snippet/line_number/background>;
padding-right: 16px;
text-align: right;
}
#code_file #code_snippet #scope_name {
padding-left: 4px;
text-align: left;
}
#line_number_area {
background-color: <color:code/snippet/line_number/background>;
border: none;
color: <color:code/snippet/line_number/text>;
font-family: "<setting:font_name>";
font-size: <setting:font_size>px;
}
#code_area {
background-color: transparent;
font-family: "Source Code Pro";
font-size: 14px;
color: <color:code/snippet/syntax/normal>;
font-family: "<setting:font_name>";
font-size: <setting:font_size>px;
selection-color: <color:code/snippet/selection/text>;
selection-background-color: <color:code/snippet/selection/background>;
}
#code_area #line_number_area {
font-family: "Source Code Pro";
font-size: 14px;
}
#code_file #maximize_button, #code_file #snippet_button, #code_file #minimize_button {
#code_file #file_button {
background: transparent;
border: none;
margin: 3px;
max-height: 16px;
max-width: 16px;
}
#code_file #maximize_button {
border-image: url(data/gui/code_view/images/maximize_inactive.png);
#code_file #file_button:enabled {
border-image: url(<setting:gui_path>code_view/images/button_background.png);
}
#code_file #maximize_button:enabled {
border-image: url(data/gui/code_view/images/maximize_active.png);
}
#code_file #snippet_button {
border-image: url(data/gui/code_view/images/snippet_inactive.png);
}
#code_file #snippet_button:enabled {
border-image: url(data/gui/code_view/images/snippet_active.png);
}
#code_file #minimize_button {
border-image: url(data/gui/code_view/images/minimize_inactive.png);
}
#code_file #minimize_button:enabled {
border-image: url(data/gui/code_view/images/minimize_active.png);
}
QToolTip {
background-color: rgb(204, 204, 204);
border: 1px solid rgb(0, 0, 0);
color: rgb(0, 0, 0);
#single_file_title_bar {
background-color: <color:code/file/background>;
padding-right: 5px;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 578 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 384 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 867 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 425 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 587 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 536 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 604 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 541 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 618 B

@@ -0,0 +1,84 @@
QGraphicsView, QGraphicsScene {
background-color: <color:graph/background>;
border: none;
}
QPushButton {
background: <color:search/button/normal>;
border: none;
color: <color:search/button/icon>;
border-radius: 5px;
}
QPushButton:disabled {
background: <color:search/button/disabled>;
}
QPushButton:hover {
background: <color:search/button/hover>;
}
QPushButton:pressed {
background: <color:search/button/press>;
}
#expand_button {
max-width: 26px;
max-height: 26px;
}
#collapse_button {
border-radius: 0;
border-top-left-radius: 7px;
border-top-right-radius: 7px;
}
#trail_button {
border-radius: 0;
}
#depth_label {
background: <color:search/button/normal>;
color: <color:search/button/icon>;
}
#depth_label:disabled {
background: <color:search/button/disabled>;
color: <color:search/button/icon_disabled>;
}
#depth_slider {
background: <color:search/button/normal>;
padding-bottom: 5px;
border-bottom-left-radius: 7px;
border-bottom-right-radius: 7px;
}
#depth_slider:disabled {
background: <color:search/button/disabled>;
}
#depth_slider::groove {
margin: 5px;
width: 2px;
}
#depth_slider::handle {
height: 10px;
margin: 0px -4px;
border-radius: 5px;
}
#depth_slider::handle:hover {
height: 12px;
margin: 0px -5px;
border-radius: 6px;
}
#depth_slider::groove, #depth_slider::handle {
background: <color:search/button/icon>;
}
#depth_slider::groove:disabled, #depth_slider::handle:disabled {
background: <color:search/button/icon_disabled>;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 760 B

After

Width:  |  Height:  |  Size: 986 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 909 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1009 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 957 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 926 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 803 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 491 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 697 B

After

Width:  |  Height:  |  Size: 614 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 718 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 886 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 881 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 753 B

@@ -0,0 +1,22 @@
#history_list {
background: <color:search/popup/background>;
border: none;
}
QListWidget::item {
border: none;
border-bottom: 1px solid <color:search/popup/background>;
}
#history_item, #history_item_current {
border: none;
color: <color:search/popup/text>;
font-family: "<setting:font_name>";
font-size: <setting:font_size>px;
padding-left: 22px;
padding-top: 1px;
}
#history_item_current {
font-weight: bold;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 491 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 532 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Some files were not shown because too many files have changed in this diff Show More