Compare commits

..
Author SHA1 Message Date
Eberhard Graether 9550ea1fdc delta time for loader 2016-07-08 14:37:49 +02:00
Eberhard Graether cad473c097 started with delay 2016-07-08 14:37:49 +02:00
Eberhard Graether 89264d97bb in code view 2016-07-08 14:37:49 +02:00
Eberhard Graether 096291a6c4 fixed animation 2016-07-08 14:37:49 +02:00
Eberhard Graether 1fcb241189 View interface 2016-07-08 14:37:49 +02:00
Eberhard Graether 996b33b1fb overlay for code view 2016-07-08 14:37:49 +02:00
Eberhard Graether fea26bfc60 animated loader with circles 2016-07-08 14:37:49 +02:00
Eberhard Graether 6a3717b8c1 basic overlay for graph view 2016-07-08 14:37:49 +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
646 changed files with 29520 additions and 11800 deletions
-27
View File
@@ -1,27 +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
if [ $BRANCH_NAME == "public_beta" ]
then
echo -e $ABORT "Commiting to public_beta is prohibited."
exit 1
fi
exit 0
+3
View File
@@ -40,7 +40,10 @@
.clang_complete
.ycm_extra_conf.py
.ycm_extra_conf.pyc
coati.coatiproject
compile_commands.json
Makefile
/__pycache__/
/deployment/windows/CoatiAppSetup/CoatiSetup/Debug
/deployment/windows/CoatiAppSetup/CoatiSetup/Release
+126 -93
View File
@@ -1,9 +1,4 @@
cmake_minimum_required(VERSION 2.8.9)
# to get CMP0043 warnings, upgrade to version 3 and change the line above to VERSION 3.0 and remove the line below
if(POLICY CMP0043)
cmake_policy(SET CMP0043 OLD)
endif()
cmake_minimum_required(VERSION 3.1)
include(cmake/add_files.cmake)
include(cmake/create_source_groups.cmake)
@@ -11,9 +6,6 @@ include(cmake/version.cmake)
include(cmake/version_setup.cmake)
include(cmake/licenses.cmake)
# set Standerd build type to Release
set(CMAKE_BUILD_TYPE_INIT "Release")
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
# Variables --------------------------------------------------------------------
@@ -37,23 +29,36 @@ else ()
set(PLATFORM_INCLUDE "includesLinux.h")
endif ()
# Settings ---------------------------------------------------------------------
if (UNIX)
add_definitions(-std=c++11 -Wno-unknown-warning-option -fcolor-diagnostics -DQT_COMPILING_QSTRING_COMPAT_CPP )
endif ()
# Project ----------------------------------------------------------------------
project(${PROJECT_NAME})
# set Standerd build type to Release
set(CMAKE_BUILD_TYPE_INIT "Release")
#RPATH
if(UNIX AND NOT APPLE)
set(CMAKE_SKIP_BUILD_RPATH FALSE)
set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
set(CMAKE_INSTALL_RPATH "$ORIGIN/lib/:$$ORIGIN/lib/")
include(cmake/external.cmake)
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()
if (UNIX)
#add_definitions(-std=c++11 -Wno-unknown-warning-option -fcolor-diagnostics -DQT_COMPILING_QSTRING_COMPAT_CPP )
add_definitions(-fno-omit-frame-pointer -DQT_COMPILING_QSTRING_COMPAT_CPP )
endif ()
# Clang ------------------------------------------------------------------------
if (UNIX AND APPLE)
@@ -63,7 +68,7 @@ if (UNIX AND APPLE)
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build_debug/share/llvm/cmake" NO_DEFAULT_PATH)
endif()
elseif(UNIX)
find_package(LLVM REQUIRED PATHS "${EXTERNAL_BUILD}/llvm/share/llvm/cmake" NO_DEFAULT_PATH)
find_package(LLVM REQUIRED PATHS "${EXTERNAL_BUILD}/llvm/share/llvm/cmake" NO_DEFAULT_PATH)
else()
find_package(LLVM REQUIRED PATHS "$ENV{CLANG_DIR}/build/share/llvm/cmake")
endif()
@@ -75,9 +80,9 @@ add_definitions(${CLANG_DEFINITIONS})
# Boost ------------------------------------------------------------------------
if(UNIX AND NOT APPLE)
set(BOOST_ROOT ${EXTERNAL_BUILD}/boost)
set(BOOST_ROOT ${EXTERNAL_BUILD}/boost)
else()
set(BOOST_ROOT $ENV{BOOST_159_DIR})
set(BOOST_ROOT $ENV{BOOST_159_DIR})
endif()
set(Boost_USE_MULTITHREAD ON)
set(Boost_USE_STATIC_LIBS ON)
@@ -91,37 +96,83 @@ find_package(Boost 1.59 COMPONENTS system program_options filesystem date_time R
add_definitions(-DEIGEN_MPL2_ONLY)
if(UNIX AND NOT APPLE)
set(EIGEN_ROOT ${EXTERNAL_SRC}/eigen)
set(EIGEN_ROOT ${EXTERNAL_SRC}/eigen)
else()
set(EIGEN_ROOT $ENV{EIGEN_DIR})
set(EIGEN_ROOT $ENV{EIGEN_DIR})
endif()
# Botan -------------------------------------------------------------------------
set(BOTAN_VERSION "botan-1.11")
if(UNIX AND APPLE)
find_library(BOTAN botan-1.11 $ENV{BOTAN_DIR}/release NO_DEFAULT_PATH)
find_library(BOTAN_D botan-1.11 $ENV{BOTAN_DIR}/debug NO_DEFAULT_PATH)
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 botan-1.11 "${EXTERNAL_BUILD}/botan/lib" NO_DEFAULT_PATH)
find_library(BOTAN ${BOTAN_VERSION} "${EXTERNAL_BUILD}/botan" NO_DEFAULT_PATH)
else()
find_library(BOTAN botan "$ENV{BOTAN_DIR}/release")
find_library(BOTAN botan "$ENV{BOTAN_DIR}/release")
find_library(BOTAN_D botan "$ENV{BOTAN_DIR}/debug")
endif()
if(${BOTAN} STREQUAL "BOTAN-NOTFOUND")
message(FATAL_ERROR "Botan not found")
message(FATAL_ERROR "Botan not found")
else()
message(STATUS "Botan found")
message(STATUS "Botan found")
endif()
if(UNIX AND NOT APPLE)
set(BOTAN_INCLUDE_DIR "${EXTERNAL_SRC}/botan")
set(BOTAN_INCLUDE_DIR "${EXTERNAL_BUILD}/botan")
else()
set(BOTAN_INCLUDE_DIR "$ENV{BOTAN_DIR}")
set(BOTAN_INCLUDE_DIR "$ENV{BOTAN_DIR}")
endif()
# Lib License -------------------------------------------------------------------
#set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_license)
#set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_license)
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"
)
set_target_properties(
${LIB_LICENSE_PROJECT_NAME}
PROPERTIES
DEBUG_OUTPUT_NAME ${LIB_LICENSE_PROJECT_NAME}_d
RELEASE_OUTPUT_NAME ${LIB_LICENSE_PROJECT_NAME}
)
target_include_directories(${LIB_LICENSE_PROJECT_NAME} SYSTEM
PUBLIC
${Boost_INCLUDE_DIRS}
${LIB_LICENSE_PROJECT_NAME}
${BOTAN_INCLUDE_DIR}
)
# target_include_directories(${LIB_LICENSE_PROJECT_NAME} optimized "$ENV{BOTAN_DIR}/release")
# target_include_directories(${LIB_LICENSE_PROJECT_NAME} debug "$ENV{BOTAN_DIR}/debug")
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()
# Lib --------------------------------------------------------------------------
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/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)
@@ -146,6 +197,8 @@ set_property(
TARGET ${LIB_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/build/src/lib_license"
)
target_include_directories(${LIB_PROJECT_NAME} SYSTEM
@@ -153,15 +206,15 @@ target_include_directories(${LIB_PROJECT_NAME} SYSTEM
${CLANG_INCLUDE_DIRS}
${Boost_INCLUDE_DIRS}
${EIGEN_ROOT}
"${CMAKE_SOURCE_DIR}/src/external"
"${CMAKE_SOURCE_DIR}/src/external"
)
target_link_libraries(${LIB_PROJECT_NAME} ${Boost_LIBRARIES})
target_link_libraries(${LIB_PROJECT_NAME} ${Boost_LIBRARIES} ${LIB_LICENSE_PROJECT_NAME})
# Lib Parser -------------------------------------------------------------------
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_parser)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_parser)
#set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_parser)
#set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_parser)
add_subdirectory(src/lib_parser)
@@ -172,12 +225,19 @@ add_library(${LIB_PARSER_PROJECT_NAME} ${CLANG_FILES})
create_source_groups(${CLANG_FILES})
set_property(
TARGET ${LIB_PARSER_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
TARGET ${LIB_PARSER_PROJECT_NAME}
PROPERTY INCLUDE_DIRECTORIES
"${CMAKE_SOURCE_DIR}/src/lib_parser"
"${CMAKE_SOURCE_DIR}/src/lib"
)
set_target_properties(
${LIB_PARSER_PROJECT_NAME}
PROPERTIES
DEBUG_OUTPUT_NAME ${LIB_PARSER_PROJECT_NAME}_d
RELEASE_OUTPUT_NAME ${LIB_PARSER_PROJECT_NAME}
)
target_include_directories(${LIB_PARSER_PROJECT_NAME} SYSTEM
PUBLIC ${LLVM_INCLUDE_DIRS}
${CLANG_INCLUDE_DIRS}
@@ -187,50 +247,12 @@ target_include_directories(${LIB_PARSER_PROJECT_NAME} SYSTEM
link_directories(${LLVM_LIBRARY_DIRS} ${CLANG_LIBRARY_DIRS} ${Boost_LIBRARY_DIRS})
llvm_map_components_to_libnames(REQ_LLVM_LIBS support core libdriver)
#target_link_libraries(${LIB_PARSER_PROJECT_NAME} ${CLANG_LIBRARIES} ${LLVM_AVAILABLE_LIBS})
target_link_libraries(${LIB_PARSER_PROJECT_NAME} ${CLANG_LIBRARIES} ${REQ_LLVM_LIBS})
# Lib License -------------------------------------------------------------------
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_license)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_license)
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}
${LIB_LICENSE_PROJECT_NAME}
${BOTAN_INCLUDE_DIR}
)
# target_include_directories(${LIB_LICENSE_PROJECT_NAME} optimized "$ENV{BOTAN_DIR}/release")
# target_include_directories(${LIB_LICENSE_PROJECT_NAME} debug "$ENV{BOTAN_DIR}/debug")
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()
# Lib Gui ----------------------------------------------------------------------
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_gui)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_gui)
#set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_gui)
#set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib_gui)
add_subdirectory(src/lib_gui)
@@ -241,14 +263,14 @@ set(CMAKE_AUTOMOC ON)
# Find the QtWidgets library
if(UNIX AND NOT APPLE)
set(CMAKE_PREFIX_PATH ${EXTERNAL_BUILD}/qt)
set(CMAKE_PREFIX_PATH ${EXTERNAL_BUILD}/qt)
else()
set(CMAKE_PREFIX_PATH "$ENV{QT_DIR}/")
set(CMAKE_PREFIX_PATH "$ENV{QT_DIR}/")
endif()
if(UNIX AND APPLE)
set(Qt5Widgets_DIR "$ENV{QT_DIR}/cmake/Qt5Widgets/")
set(Qt5PrintSupport_DIR "$ENV{QT_DIR}/cmake/Qt5PrintSupport/")
set(Qt5Widgets_DIR "$ENV{QT_DIR}/cmake/Qt5Widgets/")
set(Qt5PrintSupport_DIR "$ENV{QT_DIR}/cmake/Qt5PrintSupport/")
endif()
find_package(Qt5Widgets)
@@ -256,11 +278,11 @@ 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()
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
@@ -278,7 +300,7 @@ add_custom_command(
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_SOURCE_DIR}/cmake/version.cmake
BYPRODUCTS ${PROJECT_SOURCE_DIR}/build/src/lib_gui/version.h
DEPENDS ${LIB_GUI_PROJECT_NAME}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
COMMENT "check/update version number"
)
add_dependencies(${LIB_GUI_PROJECT_NAME} versionnumber)
@@ -292,6 +314,14 @@ set_property(
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/build/src/lib_license"
)
set_target_properties(
${LIB_GUI_PROJECT_NAME}
PROPERTIES
DEBUG_OUTPUT_NAME ${LIB_GUI_PROJECT_NAME}_d
RELEASE_OUTPUT_NAME ${LIB_GUI_PROJECT_NAME}
)
# include external header without warnings
@@ -313,8 +343,8 @@ configure_file(
#configure the versioning file
configure_file(
${CMAKE_SOURCE_DIR}/cmake/version.h.in
${CMAKE_SOURCE_DIR}/build/src/lib_gui/version.h
${CMAKE_SOURCE_DIR}/cmake/version.h.in
${CMAKE_SOURCE_DIR}/build/src/lib_gui/version.h
)
# configure public key for the coati version
@@ -342,7 +372,7 @@ if (WIN32)
"IDI_ICON1 ICON \"${CMAKE_SOURCE_DIR}/build/coati.ico\"\n"
)
add_executable(${APP_PROJECT_NAME} ${APP_FILES} ${CLANG_FILES} ${GEN_FILES} ${CMAKE_SOURCE_DIR}/build/Coati.rc ${CMAKE_SOURCE_DIR}/build/src/lib_gui/version.h)
add_executable(${APP_PROJECT_NAME} ${APP_FILES} ${CLANG_FILES} ${GEN_FILES} ${CMAKE_SOURCE_DIR}/build/Coati.rc)
# hide the console when running a release build.
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_DEBUG "/SUBSYSTEM:CONSOLE")
@@ -352,7 +382,7 @@ if (WIN32)
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_RELEASE "/ENTRY:\"mainCRTStartup\" /SUBSYSTEM:WINDOWS")
set_target_properties(${APP_PROJECT_NAME} PROPERTIES LINK_FLAGS_MINSIZEREL "/SUBSYSTEM:WINDOWS")
else ()
add_executable(${APP_PROJECT_NAME} ${APP_FILES} ${GEN_FILES} ${CMAKE_SOURCE_DIR}/build/src/lib_gui/version.h)
add_executable(${APP_PROJECT_NAME} ${APP_FILES} ${GEN_FILES})
endif ()
create_source_groups(${APP_FILES})
@@ -368,6 +398,7 @@ set_property(
"${CMAKE_SOURCE_DIR}/src/lib_license"
"${CMAKE_SOURCE_DIR}/src/lib_parser"
"${CMAKE_SOURCE_DIR}/build/src/lib_gui"
"${CMAKE_SOURCE_DIR}/build/src/lib_license"
"${CMAKE_SOURCE_DIR}/build/src/app"
)
@@ -434,6 +465,7 @@ set_property(
"${CMAKE_SOURCE_DIR}/src/lib"
"${CMAKE_SOURCE_DIR}/src/lib_gui"
"${CMAKE_SOURCE_DIR}/build/src/lib_gui"
"${CMAKE_SOURCE_DIR}/build/src/lib_license"
)
target_include_directories(${TRIAL_PROJECT_NAME} SYSTEM
@@ -542,9 +574,9 @@ endif ()
add_subdirectory(src/test)
if(UNIX AND NOT APPLE)
set(CXXTEST_INCLUDE_DIR ${EXTERNAL_SRC}/cxxtest)
set(CXXTEST_INCLUDE_DIR ${EXTERNAL_SRC}/cxxtest)
else()
set(CXXTEST_INCLUDE_DIR $ENV{CXX_TEST_DIR})
set(CXXTEST_INCLUDE_DIR $ENV{CXX_TEST_DIR})
endif()
set(CXXTEST_PYTHON_TESTGEN_EXECUTABLE ${CXXTEST_INCLUDE_DIR}/bin/cxxtestgen)
set(TESTGEN_FILE ${CMAKE_CURRENT_BINARY_DIR}/test_main.cpp)
@@ -592,6 +624,7 @@ elseif (UNIX)
add_custom_command(
OUTPUT ${TESTGEN_FILE}
PRE_BUILD
COMMAND rm -f ${TESTGEN_FILE}
COMMAND cd ${PROJECT_SOURCE_DIR} && ${PYTHON_EXECUTABLE} ${CXXTEST_PYTHON_TESTGEN_EXECUTABLE} --runner=ParenPrinter -o ${TESTGEN_FILE} ${TEST_FILES}
COMMENT "Generating unittest code with cxxtestgen"
)
+233 -66
View File
@@ -1,22 +1,22 @@
### Masterproject
## Masterproject
#### Setup
### Setup
##### External Software
#### External Software
* QT 5.5
* QT 5.6
* CxxTest 4.3
* Valgrind 3.9.0 (linux)
* Clang & LLVM (doesnt quite work for windows, use unix setup below and skip all the ninja stuff)(installation guide http://clang.llvm.org/docs/LibASTMatchersTutorial.html)
* Clang & LLVM 3.8 (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
* Eigen 3.2.6
* Botan 1.11.24
##### Environment Variables
#### Environment Variables
* QT_DIR - ...\Qt\Qt5.2.1\5.2.1\<IDE>\
* CXX_TEST_DIR - .../cxxtest-4.3/
* CLANG_DIR - .../clang-llvm/
* QT_DIR - .../Qt/Qt5.6.0/5.6/<IDE>
* CXX_TEST_DIR - .../cxxtest-4.3
* CLANG_DIR - .../clang-llvm
* BOOST_159_DIR - .../boost_1_59_0
* EIGEN_DIR - .../eigen
* BOTAN_DIR - .../Botan-1.11.24
@@ -25,7 +25,7 @@ For Win32:
* VLD_DIR - .../Visual Leak Detector
* path - apped path to git.exe
###### Botan setup
##### Botan setup
Build release lib in ${BOTAN_DIR}/release
Build debug lib in ${BOTAN_DIR}/debug
@@ -39,30 +39,30 @@ python configure.py --cc=msvc --cpu=x86_32 --via-amalgamation --disable-shared -
for other:
$ python configure.py --via-amalgamation --disable-shared
##### Settings
#### Settings
Run setup script:
$ ./script/setup.sh
#### Release
### Release
##### App
#### App
* create release build
* make sure it uses the Coati icon
* obfuscate the executable using upx
##### Data folder
#### 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 Coati start layout
##### Package
#### Package
* add app
* add web/coati_manual.pdf to package
##### Updating Clang on UNIX
#### Updating Clang on UNIX
$ cd .../clang_llvm
@@ -83,66 +83,233 @@ $ cd ../release_build
$ cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ../llvm
$ ninja -j4 check-all
##### Remarks
#### Remarks
* Boost lib dir: rename library directory for your system (e.g.: 'lib32-msvc-12.0') to 'lib'
#### Tagging
### Tagging
$ git tag -a VERSION_NUMBER -m "DESCRIPTION"
$ git push --tags
#### Changelog
### Changelog
##### 0.3.0
#### 0.7.0.22
released 2016-07-07
* Added Tutorial project
* Added communication interface from and to Coati via TCP sockets
* Added plugin for Visual Studio (2012, 2013, 2015)
* Added plugin for Sublime Text (2 & 3)
* Increased autocompletion performance by caching and limiting results to 100
* Save Coati version to sqlite and reparse project whenever the version changes
* Improved source locations of template scopes
* Fixed horizontal scroll in code view not activated while scrolling vertically
* Save errors to storage and reactivate them via button in the status bar
* Save macro scopes
* Fixed old data was still in new project window when creating another project
* Save comment locations and display them when right next to active symbol
* Reworked code view highlighting
* Fixed cursor was jumping at end of query when editing a search query
* Fixed search query disappeared when not token was found for it
* Improved code view auto scroll to center the first active line in the middle
* Focus all overlapping source locations in the code view
* Added recent projects menu option
* Saving all template arguments type uses
* 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.4.0
#### 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
* Network ports for IDE communication can be defined in the ApplicationSettings.xml
* Coati can now handle inclass initialization of members
* Improved handling of template arguments in analysis
* Coati now handles anonymous symbols when parsing files
* Extended color schemes to allow more extensive use in the graph
* Added new color scheme called "bad_rainbow"
* Coati shows a template's general definition when an implicit specialization is activated
* Fixed source locations of many declarations
* Fixed syntax highlighting to correctly identify strings, comments and block comments
* Added analysis for template parameter packs
* Show function and method signature in tooltip when hovering the graph node
* Fixed graph font size was too small for Windows and Linux
* Removed Coati directory from Linux package
* Introduced file endings .coatiproject and .coatidb for Coati's project files
* Added installer for Windows
* Installing prerequisits in Windows Installer
* Redesigned the about window
* Parse errors will be displayed as they appear during analysis
* Fixed constructors and destructors using return type 'void' withou source location
* Removed 'close window' action from menu
* Added help texts to project setup and preferences window
* Improved lambda handling in analysis
* Fixed style of function or method nodes with children
* Fixed tooltip colors in dark color scheme
* renamed undo&redo to back&forward
* navigate back&forward via mouse buttons
* 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
+4 -1
View File
@@ -35,12 +35,15 @@
</framework_search_paths>
<extensions>
<header_extensions><!-- STRING: extension for header/include e.g. .h --></header_extensions>
<source_extensions><!-- STRING: extension for source e.g. .cpp --></source_extensions>
</extensions>
<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>
<exclude_paths>
<exclude_path><!-- STRING: path to file or directory to exclude from analysis --></source_path>
</exclude_paths>
<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>
+70 -25
View File
@@ -13,7 +13,7 @@
</button>
<field>
<text>#3D3D3D</text>
<text>#FFFFFF</text>
<background>#808080</background>
<highlight>#B1B1B1</highlight>
</field>
@@ -27,17 +27,45 @@
<query>
<none>
<normal>#B1B1B1</normal>
<hover>#CCCCCC</hover>
<normal>
<fill>#B1B1B1</fill>
<text>#3D3D3D</text>
</normal>
<hover>
<fill>#CCCCCC</fill>
<text>#3D3D3D</text>
</hover>
</none>
<command>
<normal>#86BD40</normal>
<hover>#9EC769</hover>
<normal>
<fill>#86BD40</fill>
<text>#3D3D3D</text>
</normal>
<hover>
<fill>#9EC769</fill>
<text>#3D3D3D</text>
</hover>
</command>
<operator>
<normal>#7D2724</normal>
<hover>#8C2B29</hover>
<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>
@@ -87,48 +115,59 @@
</syntax>
<selection>
<location>
<token>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#B2B2B2</border>
<border>#EDEDED</border>
<fill>transparent</fill>
</focus>
<active>
<border>#B2B2B2</border>
<fill>#4A4A4A</fill>
<border>#EDEDED</border>
<fill>#EDEDED</fill>
<text>#262626</text>
</active>
</location>
</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>
<focus>
<border>transparent</border>
<fill>transparent</fill>
</focus>
<active>
<border>transparent</border>
<fill>transparent</fill>
</active>
</scope>
<error>
<normal>
<border>transparent</border>
<fill>#A0FF0000</fill>
<text>#000000</text>
</normal>
<focus>
<border>transparent</border>
<fill>#FFFF0000</fill>
</focus>
<active>
<border>transparent</border>
<fill>#FFFF0000</fill>
</active>
</error>
<fulltext>
<normal>
<fill>#C2AFEF</fill>
<text>#3D3D3D</text>
</normal>
</fulltext>
</selection>
</snippet>
</code>
@@ -243,6 +282,12 @@
<normal>#20FFFFFF</normal>
<focus>#FFFFFF</focus>
</border>
<text>
<normal>#FFFFFF</normal>
</text>
<icon>
<normal>#FFFFFF</normal>
</icon>
</file>
<macro>
<like>file</like>
+63 -26
View File
@@ -27,17 +27,45 @@
<query>
<none>
<normal>white</normal>
<hover>#F5F5F5</hover>
<normal>
<fill>white</fill>
<text>black</text>
</normal>
<hover>
<fill>#F5F5F5</fill>
<text>black</text>
</hover>
</none>
<command>
<normal>#8FBC92</normal>
<hover>#5EA071</hover>
<normal>
<fill>#8FBC92</fill>
<text>black</text>
</normal>
<hover>
<fill>#5EA071</fill>
<text>black</text>
</hover>
</command>
<operator>
<normal>#FCA47E</normal>
<hover>#F97A4E</hover>
<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>
@@ -87,48 +115,57 @@
</syntax>
<selection>
<location>
<token>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#B2B2B2</border>
<border>#8E8E8E</border>
<fill>transparent</fill>
</focus>
<active>
<border>#B2B2B2</border>
<fill>#EDEDED</fill>
<border>#A0A0A0</border>
<fill>#A0A0A0</fill>
<text>#FFFFFF</text>
</active>
</location>
</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>
<focus>
<border>transparent</border>
<fill>transparent</fill>
</focus>
<active>
<border>transparent</border>
<fill>transparent</fill>
</active>
</scope>
<error>
<normal>
<border>transparent</border>
<fill>#80FF0000</fill>
<text>#000000</text>
</normal>
<focus>
<border>transparent</border>
<fill>#FFFF0000</fill>
</focus>
<active>
<border>transparent</border>
<fill>#FFFF0000</fill>
</active>
</error>
<fulltext>
<normal>
<fill>#C7C7E2</fill>
<text>#000000</text>
</normal>
</fulltext>
</selection>
</snippet>
</code>
@@ -295,8 +332,8 @@
</template_member_specialization>
<aggregation>
<normal>#EEE</normal>
<focus>#DDD</focus>
<normal>#DDD</normal>
<focus>#CCC</focus>
</aggregation>
</edge>
</graph>
+84 -26
View File
@@ -27,17 +27,64 @@
<query>
<none>
<normal>#2F2F2F</normal>
<hover>black</hover>
<normal></normal>
<hover></hover>
</none>
<command>
<normal>#406D4D</normal>
<hover>#4E855E</hover>
<normal></normal>
<hover></hover>
</command>
<operator>
<normal>#7D2724</normal>
<hover>#8C2B29</hover>
<normal></normal>
<hover></hover>
</operator>
<fulltext>
<normal></normal>
<hover></hover>
</fulltext>
</query>
<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>
@@ -87,48 +134,59 @@
</syntax>
<selection>
<location>
<token>
<normal>
<border>transparent</border>
<fill>transparent</fill>
</normal>
<focus>
<border>#B2B2B2</border>
<border>#F7F7F7</border>
<fill>transparent</fill>
</focus>
<active>
<border>#B2B2B2</border>
<fill>#4A4A4A</fill>
<border>transparent</border>
<fill>#F7F7F7</fill>
<text>#272728</text>
</active>
</location>
</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>
<focus>
<border>transparent</border>
<fill>transparent</fill>
</focus>
<active>
<border>transparent</border>
<fill>transparent</fill>
</active>
</scope>
<error>
<normal>
<border>transparent</border>
<fill>#A0FF0000</fill>
<text>#000000</text>
</normal>
<focus>
<border>transparent</border>
<fill>#FFFF0000</fill>
</focus>
<active>
<border>transparent</border>
<fill>#FFFF0000</fill>
</active>
</error>
<fulltext>
<normal>
<fill>#207EA8</fill>
<text>#F7F7F7</text>
</normal>
</fulltext>
</selection>
</snippet>
</code>
@@ -317,8 +375,8 @@
</macro_use>
<aggregation>
<normal>#5D5D5D</normal>
<focus>#6D6D6D</focus>
<normal>#3D3D3D</normal>
<focus>#4D4D4D</focus>
</aggregation>
</edge>
</graph>
-4
View File
@@ -4,10 +4,6 @@
font-weight: 100;
}
#small {
font-size: 12px;
}
#closeButton {
background: transparent;
border: none;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 368 B

After

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 8.0 KiB

+11 -9
View File
@@ -2,16 +2,13 @@
background-color: <color:code/background>;
}
* {
font-size: <setting:font_size>pt;
}
#code_file {
background-color: <color:code/snippet/background>;
border: 2px solid <color:code/file/background>;
border-radius: 12px;
border-top-left-radius: 14px;
border-top-right-radius: 14px;
font-size: <setting:font_size>pt;
padding-bottom: 7px;
}
@@ -19,6 +16,7 @@
background-color: <color:code/file/background>;
border-top-left-radius: 7px;
border-top-right-radius: 7px;
font-size: <setting:font_size>pt;
padding-right: 5px;
}
@@ -27,6 +25,7 @@
border: none;
border-radius: 3px;
color: <color:code/file/title/text>;
font-size: <setting:font_size>pt;
padding: 2px 4px;
margin: 1px 8px 3px;
}
@@ -52,10 +51,7 @@
#code_file #code_snippet {
background-color: <color:code/snippet/background>;
border-top: 2px solid <color:code/file/background>;
}
#code_file #code_snippet * {
font-family: "<setting:font_name>";
font-size: <setting:font_size>pt;
}
#code_file #code_snippet[isFirst=true] {
@@ -65,8 +61,10 @@
#code_file #code_snippet #scope_name, #code_file #code_snippet #dots {
background-color: <color:code/snippet/title/background>;
color: <color:code/snippet/title/text>;
border: none;
color: <color:code/snippet/title/text>;
font-family: "<setting:font_name>";
font-size: <setting:font_size>pt;
}
#code_file #code_snippet #scope_name:hover {
@@ -88,11 +86,15 @@
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>pt;
}
#code_area {
background-color: transparent;
color: <color:code/snippet/syntax/normal>;
font-family: "<setting:font_name>";
font-size: <setting:font_size>pt;
}
#code_file #maximize_button, #code_file #snippet_button, #code_file #minimize_button {
Binary file not shown.

After

Width:  |  Height:  |  Size: 867 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.

Before

Width:  |  Height:  |  Size: 697 B

After

Width:  |  Height:  |  Size: 614 B

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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 760 B

After

Width:  |  Height:  |  Size: 986 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 748 B

After

Width:  |  Height:  |  Size: 827 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 584 B

After

Width:  |  Height:  |  Size: 693 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 436 B

After

Width:  |  Height:  |  Size: 588 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 337 B

After

Width:  |  Height:  |  Size: 475 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 656 B

After

Width:  |  Height:  |  Size: 811 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: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 852 B

After

Width:  |  Height:  |  Size: 718 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 546 B

After

Width:  |  Height:  |  Size: 699 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 684 B

After

Width:  |  Height:  |  Size: 816 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 805 B

After

Width:  |  Height:  |  Size: 953 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.0 KiB

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 915 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 925 B

@@ -13,6 +13,10 @@ QPushButton:hover, QPushButton:checked {
background: <color:search/button/hover>;
}
QPushButton:disabled {
background: <color:search/button/disabled>;
}
QPushButton:pressed {
background: <color:search/button/press>;
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 706 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 811 B

+11 -5
View File
@@ -16,6 +16,7 @@ QWidget#search_box_container {
border: none;
border-bottom-left-radius: 12px;
border-top-left-radius: 12px;
margin-left: 5px;
margin-right: 2px;
}
@@ -23,6 +24,7 @@ QLineEdit#search_box {
background-color: transparent;
border: none;
color: <color:search/field/text>;
margin-left: 5px;
selection-background-color: <color:search/field/highlight>;
}
@@ -41,19 +43,23 @@ QAbstractItemView#search_box_popup {
selection-background-color: <color:search/popup/highlight>;
}
QPushButton#search_button {
#search_button, #home_button {
background: <color:search/button/normal>;
border: none;
border-bottom-right-radius: 12px;
border-top-right-radius: 12px;
border-radius: 12px;
background-position: 15px 5px;
width: 30px;
}
#search_button:hover {
#search_button {
border-bottom-left-radius: 0px;
border-top-left-radius: 0px;
}
#search_button:hover, #home_button:hover {
background: <color:search/button/hover>;
}
#search_button:pressed {
#search_button:pressed, #home_button:pressed {
background: <color:search/button/press>;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

@@ -1,82 +0,0 @@
#titleLabel {
color: black;
font-size: 16pt;
font-weight: bold;
}
QLineEdit {
background-color: rgba(255, 255, 255, 200);
border-radius: 10px;
border: 1px solid lightgrey;
height: 20px;
padding-left: 5px;
padding-right: 5px;
}
QLineEdit:disabled {
border: 1px solid lightgrey;
}
#formArea {
background-color: transparent;
border: none;
border-top: 1px solid lightgrey;
border-bottom: 1px solid lightgrey;
}
#form {
background-color: rgba(255, 255, 255, 150);
}
#form #label {
font-weight: bold;
}
#form #help {
background: transparent;
border: 1px solid #575656;
border-radius: 9px;
color: #575656;
height: 16px;
width: 16px;
}
#form #help:hover {
border-color: black;
color: black;
}
#moreButton {
background-color: rgba(255, 255, 255, 200);
border: 1px solid lightgray;
border-radius: 10px;
color: gray;
font-size: 15px;
height: 20px;
margin-left: 5px;
width: 28px;
}
#moreButton:hover {
color: white;
background: #2D3F85;
}
#windowButton {
background: white;
border: 1px solid lightgray;
border-radius: 8px;
color: black;
padding: 3px 5px 2px;
font-size: 14pt;
min-width: 5em;
}
#windowButton:hover {
color: white;
background: #2D3F85;
}
#windowButton:disabled {
color: lightgray;
}
Executable → Regular
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 78 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

+25 -1
View File
@@ -20,7 +20,14 @@
font-size: 12pt;
}
#recentButton:hover {
#recentButtonMissing {
background: none;
border: none;
color: grey;
font-size: 12pt;
}
#recentButton:hover, #recentButtonMissing:hover {
background-color: #CFD2E0;
border-radius: 10px;
}
@@ -29,4 +36,21 @@
color: black;
font-size: 16pt;
font-weight: bold;
margin-left: 6px;
}
#versionLabel {
color: black;
font-size: 12pt;
font-weight: bold;
}
#updateLabel {
color: black;
font-size: 12pt;
}
#welcomeLabel {
color: black;
font-size: 12pt;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 314 B

After

Width:  |  Height:  |  Size: 482 B

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 578 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 562 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

@@ -47,27 +47,27 @@ QtListItemWidget #field {
}
#plusButton {
border-image: url(<setting:gui_path>setting_window/plus.png);
border-image: url(<setting:gui_path>window/plus.png);
}
#plusButton:hover {
border-image: url(<setting:gui_path>setting_window/plus_hover.png);
border-image: url(<setting:gui_path>window/plus_hover.png);
}
#minusButton {
border-image: url(<setting:gui_path>setting_window/minus.png);
border-image: url(<setting:gui_path>window/minus.png);
}
#minusButton:hover {
border-image: url(<setting:gui_path>setting_window/minus_hover.png);
border-image: url(<setting:gui_path>window/minus_hover.png);
}
#dotsButton {
border-image: url(<setting:gui_path>setting_window/dots.png);
border-image: url(<setting:gui_path>window/dots.png);
}
#dotsButton:hover {
border-image: url(<setting:gui_path>setting_window/dots_hover.png);
border-image: url(<setting:gui_path>window/dots_hover.png);
}
#dropInfo {
Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

@@ -25,7 +25,17 @@
margin-left: 20px;
}
#description {
font-size: 12pt;
}
#label {
font-size: 12pt;
font-weight: bold;
}
#titleLabel {
font-size: 14pt;
font-weight: bold;
}
@@ -53,27 +63,27 @@
}
#helpButton {
border-image: url(<setting:gui_path>setting_window/help.png);
border-image: url(<setting:gui_path>window/help.png);
}
#helpButton:hover {
border-image: url(<setting:gui_path>setting_window/help_hover.png);
border-image: url(<setting:gui_path>window/help_hover.png);
}
#dotsButton {
border-image: url(<setting:gui_path>setting_window/dots.png);
border-image: url(<setting:gui_path>window/dots.png);
}
#dotsButton:hover {
border-image: url(<setting:gui_path>setting_window/dots_hover.png);
border-image: url(<setting:gui_path>window/dots_hover.png);
}
#refreshButton {
border-image: url(<setting:gui_path>setting_window/refresh.png);
border-image: url(<setting:gui_path>window/refresh.png);
}
#refreshButton:hover {
border-image: url(<setting:gui_path>setting_window/refresh_hover.png);
border-image: url(<setting:gui_path>window/refresh_hover.png);
}
#name, #picker {
@@ -112,7 +122,6 @@
border-top-right-radius: 0px;
font-size: 15pt;
margin-right: 0px;
margin-bottom: 7px;
height: 25px;
width: 90px;
}
+1 -1
View File
@@ -1 +1 @@
%windir%\system32\msiexec.exe /I{2A3B2FF5-A114-4CAB-88FB-DE8942D5B8EB}
%windir%\system32\msiexec.exe /I{E6E16577-C547-4A66-8202-AB30A02DDBC2}
+1 -1
View File
@@ -1 +1 @@
%windir%\system32\msiexec.exe /I{5DF07CC0-F774-4C4F-9397-0A749A22AB03}
%windir%\system32\msiexec.exe /I{225E11DF-20A0-4AE0-AD5C-00944A9E3D71}
@@ -3,6 +3,7 @@
#include "player.h"
class HumanPlayer : public Player {
public:
HumanPlayer( Field::Token token, const char* name );
@@ -5,8 +5,17 @@
<standard>11</standard>
</language_settings>
<source>
<extensions>
<header_extensions>.h</header_extensions>
<header_extensions>.hpp</header_extensions>
<source_extensions>.cpp</source_extensions>
<source_extensions>.cxx</source_extensions>
<source_extensions>.cc</source_extensions>
<source_extensions>.c</source_extensions>
</extensions>
<source_paths>
<source_path>./src</source_path>
</source_paths>
<use_source_paths_for_header_search>0</use_source_paths_for_header_search>
</source>
</config>
@@ -55,6 +55,7 @@ void function_with_snippets()
the_central_hub();
unrelated_but_very_important();
};
@@ -2,6 +2,19 @@
#define MAIN_H
#include "code_tutorial_1.h"
#include "code_tutorial_2.h"
#include "code_tutorial_3.h"
#include "graph_tutorial_1.h"
#include "graph_tutorial_2.h"
#include "graph_tutorial_3.h"
#include "graph_tutorial_4.h"
#include "search_tutorial_1.h"
#include "search_tutorial_2.h"
#include "search_tutorial_3.h"
#include "search_tutorial_4.h"
#include "search_tutorial_5.h"
#include "my_first_step.h"
//------------------------------------------------------------------------------
@@ -2,7 +2,7 @@
#define MY_FIRST_STEP_H
#include "the_central_hub.h"
#include "my_next_step.h"
//------------------------------------------------------------------------------
//
@@ -19,14 +19,14 @@
// did, Coati allows you to jump through the code base on your own.
//
// I THINK I GOT IT!
// Now that you understand Coati's central concept you are ready to jump
// further by activating "the_central_hub()" of this tutorial.
// Now that you understand Coati's central concept you are ready to activate
// the "my_next_step()" symbol below.
//
//------------------------------------------------------------------------------
void my_first_step()
{
the_central_hub();
my_next_step(2);
}
@@ -0,0 +1,39 @@
#ifndef MY_NEXT_STEP_H
#define MY_NEXT_STEP_H
#include "the_central_hub.h"
//------------------------------------------------------------------------------
//
// ANYTING ELSE I SHOULD KNOW?
// I'm glad that you asked. Take a look at the code below. You will notice two
// different highlights when hovering different symbols in that snippet. One
// is used for symbols that may be used everywhere throughout your code base
// while the other one is used to quickly highlight references to local
// symbols (like "foo" and "bar").
//
// MORE ON LOCAL SYMBOLS
// These local symbols aren't covered by this tutorial. So don't you dare
// clicking them! Just kidding. Even though this tutorial doesn't make
// extensive use of local symbols these highlights prove really useful when
// inspecting a real code project.
//
// THAT'S ALL FOR NOW
// Your preliminary training is complete. You may proceed to
// "the_central_hub()" of this tutorial.
//
//------------------------------------------------------------------------------
int my_next_step(int foo)
{
the_central_hub();
int bar = 2 * foo;
return bar;
}
#endif // MY_NEXT_STEP_H
@@ -20,7 +20,10 @@
// of your code. The second button toggels the auto-refresh option. When
// enabled Coati refreshes your project every time it's window gets focused.
//
// 7 - WHAT'S NEXT?
// 7 - HOME
// This last button takes you back to the initial overview screen.
//
// 8 - WHAT'S NEXT?
// Instead of the class activate the struct with the same name as before.
//
//------------------------------------------------------------------------------
@@ -6,7 +6,7 @@
//------------------------------------------------------------------------------
//
// 8 - CONGRATULATONS
// 9 - CONGRATULATONS
// You have completed the challenge of search.
// Oh, I almost forgot: You can only find nodes such as symbols via the search
// bar. It doesn't allow you to find edges like calls or inheritance. At least
@@ -14,7 +14,7 @@
LET'S GET STARTED!\n
\tTo keep things simple just click the "main" symbol below to start the tour.\n
\n
[main](); // &lt;- start here\n\n
[main\tint\r()](); // &lt;- start here\n\n
</description>
</info>
<source>
@@ -1,9 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<config>
<user>
<recent_projects>
<recent_project>./data/projects/tutorial/tutorial.coatiproject</recent_project>
<recent_project>./data/projects/tictactoe/tictactoe.coatiproject</recent_project>
</recent_projects>
</user>
<application>
<indexer_thread_count>4</indexer_thread_count>
<window_base_width>500</window_base_width>
<window_base_height>500</window_base_height>
</application>
<user>
<recent_projects>
<recent_project>./data/projects/tutorial/tutorial.coatiproject</recent_project>
<recent_project>./data/projects/tictactoe/tictactoe.coatiproject</recent_project>
</recent_projects>
</user>
</config>
@@ -7,8 +7,6 @@
<!-- COLOR: int int int int - rgba e.g. 125 125 125 255 -->
<config>
<startup_project><!-- STRING: path to project settings xml file --></startup_project>
<source>
<compiler_flags>
<compiler_flag><!-- STRING: compiler flag, including the dash e.g. -v --></compiler_flag>
@@ -28,6 +26,12 @@
<font_name><!-- STRING: font name --></font_name>
<font_size><!-- INTEGER: font size in pt --></font_size>
<color_scheme><!-- STRING: color scheme path --></color_scheme>
<font_size_max><!-- INTEGER: maximum font size in pt --></font_size_max>
<font_size_min><!-- INTEGER: minimum font size in pt --></font_size_min>
<font_size_std><!-- INTEGER: standard font size in pt --></font_size_std>
<indexer_thread_count><!-- INTEGER: number of threads indexing the source code --></indexer_thread_count>
<window_base_width><!-- INTEGER: initial width of an overlay window --></window_base_width>
<window_base_height><!-- INTEGER: initial height of an overlay window --></window_base_height>
</application>
<code>
-14
View File
@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 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>
<source>
<HeaderSearchPaths>
<HeaderSearchPath><!-- STRING: header search path for each path a HeaderSearchPaht element--></HeaderSearchPath>
</HeaderSearchPaths>
</source>
</config>
+3 -112
View File
@@ -1,22 +1,3 @@
ConfigManager.cpp WARNING: value source/header_search_paths/header_search_path is not present in config.
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:11
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:1:13
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:7:15
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:5:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:48
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:7:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:3:20
CxxDeclNameResolver.cpp ERROR: could not resolve name of decl at: input.cc:4:20
Token.cpp ERROR: Location Id was not referenced by this Token.
Node.cpp WARNING: Cannot change NodeType after it was already set from namespace to class
Edge.cpp ERROR: Nodes are not plain copies.
@@ -66,101 +47,11 @@ NetworkProtocolHelper.cpp ERROR: Failed to parse message, invalid type token
NetworkProtocolHelper.cpp ERROR: Failed to parse setActiveToken message, invalid token count
Settings.cpp WARNING: File for Settings not found: data/SettingsTestSuite/wrong_settings.xml
Settings.cpp WARNING: File for Settings not found: data/SettingsTestSuite/wrong_settings.xml
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: typedef: type <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: class: Class <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: struct: Struct <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: global: Global <file.cpp 1:42 1:42>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: field: m_field <file.cpp 1:3 1:3>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: field: Struct::m_field <file.cpp 1:11 1:11>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: function: bool isTrue(char) <file.cpp 1:14 1:14>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: method: void isMethod(bool) <file.cpp 1:9 1:9>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: method: void Class::isMethod(bool) <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: namespace: utility <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: enum: Category <file.cpp 1:17 1:17>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: enum: Class::Category <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: enum constant: VALUE <file.cpp 1:1 1:1>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: class: ClassA <file.cpp 1:0 1:0>
INFO: class: ClassB <file.cpp 1:0 1:0>
INFO: inheritance: ClassB : ClassA <file.cpp 1:5 1:5>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: struct: StructA <file.cpp 1:0 1:0>
INFO: struct: StructB <file.cpp 1:0 1:0>
INFO: inheritance: StructB : StructA <file.cpp 1:5 1:5>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: method: void A::isMethod(bool) <file.cpp 1:9 1:9>
INFO: method: void B::isMethod(bool) <file.cpp 1:7 1:7>
INFO: override: void A::isMethod(bool) -> void B::isMethod(bool) <file.cpp 1:4 1:4>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
INFO: function: void func(bool) <file.cpp 1:0 1:0>
INFO: call: bool isTrue(char) -> void func(bool) <file.cpp 1:9 1:9>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: global: global <file.cpp 1:0 1:0>
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
INFO: call: global -> bool isTrue(char) <file.cpp 1:7 1:7>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
INFO: field: Foo::m_field <file.cpp 1:0 1:0>
INFO: field usage: bool isTrue(char) -> Foo::m_field <file.cpp 1:7 1:7>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: function: bool isTrue(char) <file.cpp 1:0 1:0>
INFO: global: global <file.cpp 1:0 1:0>
INFO: global usage: bool isTrue(char) -> global <file.cpp 1:7 1:7>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: function: Struct isTrue(char) <file.cpp 1:0 1:0>
INFO: struct: Struct <file.cpp 1:0 1:0>
INFO: type usage: Struct isTrue(char) -> Struct <file.cpp 1:7 1:7>
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: file: file.h < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.h
INFO: file: file.cpp < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.cpp
INFO: file: file.h < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file file.h
INFO: file: file.cpp < 0:0 0:0>
INFO: include: file.h <file.cpp 1:7 1:7>
INFO: file: file.cpp < 0:0 0:0>
INFO: file: file.h < 0:0 0:0>
TextAccess.cpp ERROR: Could not open file path/to/test.h
TextAccess.cpp WARNING: Index 'firstLine' has to be lower or equal index 'lastLine', is 3 > 2
TextAccess.cpp WARNING: Tried to access index 10. Maximum index is 8
TextAccess.cpp WARNING: Tried to access index 10. Maximum index is 8
TextAccess.cpp WARNING: Line numbers start with one, is 0
TextAccess.cpp WARNING: Line numbers start with one, is 0
TokenLocationCollection.cpp ERROR: Can't create TokenLocation with wrong boundaries.
TokenLocationCollection.cpp ERROR: Can't create TokenLocation with wrong boundaries.
TokenLocationCollection.cpp ERROR: TokenLocation has wrong boundaries: file.c 2:3 2:1
TokenLocationCollection.cpp ERROR: TokenLocation has wrong boundaries: file.c 4:1 1:10
+96 -50
View File
@@ -13,13 +13,31 @@
#-d ${CMAKE_SOURCE_DIR}/bin/app/data/projects/tutorial/tutorial.coatiproject)"
#)
function(InstallQtModule module qtversion componentName)
get_filename_component(realpath ${EXTERNAL_BUILD}/qt/lib/libQt5${module}.so.${qtversion} REALPATH)
INSTALL(FILES
${realpath}
DESTINATION lib
COMPONENT ${componentName}
RENAME libQt5${module}.so.${qtversion}
)
endfunction(InstallQtModule)
function(InstallQt qtversion componentName)
InstallQtModule(Gui ${qtversion} ${componentName})
InstallQtModule(Core ${qtversion} ${componentName})
InstallQtModule(Network ${qtversion} ${componentName})
InstallQtModule(XcbQpa ${qtversion} ${componentName})
InstallQtModule(Widgets ${qtversion} ${componentName})
InstallQtModule(DBus ${qtversion} ${componentName})
endfunction(InstallQt)
function(AddSharedToComponent componentName)
INSTALL(DIRECTORY
${CMAKE_SOURCE_DIR}/bin/app/data
DESTINATION .
COMPONENT ${componentName}
PATTERN "log/*" EXCLUDE
PATTERN "projects/ignored" EXCLUDE
PATTERN "data/src" EXCLUDE
PATTERN "data/gui/installer" EXCLUDE
PATTERN "data/install" EXCLUDE
@@ -41,30 +59,12 @@ function(AddSharedToComponent componentName)
DESTINATION .
)
INSTALL(FILES
#Qt libs
# FIXME need a better solution for that
${EXTERNAL_BUILD}/qt/lib/libQt5Gui.so.5
${EXTERNAL_BUILD}/qt/lib/libQt5Gui.so.5.5
${EXTERNAL_BUILD}/qt/lib/libQt5Gui.so.5.5.1
${EXTERNAL_BUILD}/qt/lib/libQt5Core.so.5
${EXTERNAL_BUILD}/qt/lib/libQt5Core.so.5.5
${EXTERNAL_BUILD}/qt/lib/libQt5Core.so.5.5.1
${EXTERNAL_BUILD}/qt/lib/libQt5Network.so.5
${EXTERNAL_BUILD}/qt/lib/libQt5Network.so.5.5
${EXTERNAL_BUILD}/qt/lib/libQt5Network.so.5.5.1
${EXTERNAL_BUILD}/qt/lib/libQt5XcbQpa.so.5
${EXTERNAL_BUILD}/qt/lib/libQt5XcbQpa.so.5.5
${EXTERNAL_BUILD}/qt/lib/libQt5XcbQpa.so.5.5.1
${EXTERNAL_BUILD}/qt/lib/libQt5Widgets.so.5
${EXTERNAL_BUILD}/qt/lib/libQt5Widgets.so.5.5
${EXTERNAL_BUILD}/qt/lib/libQt5Widgets.so.5.5.1
${EXTERNAL_BUILD}/qt/lib/libQt5DBus.so.5
${EXTERNAL_BUILD}/qt/lib/libQt5DBus.so.5.5
${EXTERNAL_BUILD}/qt/lib/libQt5DBus.so.5.5.1
InstallQt(5 ${componentName})
get_filename_component(realpath ${LIBSTDCPP} REALPATH)
INSTALL(FILES
#C++
${LIBSTDCPP}
${realpath}
DESTINATION lib
COMPONENT ${componentName}
)
@@ -75,12 +75,6 @@ function(AddSharedToComponent componentName)
COMPONENT ${componentName}
)
INSTALL(DIRECTORY
${CMAKE_SOURCE_DIR}/bin/app/data/projects
DESTINATION user
COMPONENT ${componentName}
)
INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/bin/app/user
DESTINATION .
COMPONENT ${componentName}
@@ -88,7 +82,13 @@ function(AddSharedToComponent componentName)
PATTERN "ApplicationSettings_for_package.xml" EXCLUDE
PATTERN "ProjectSettings_template.xml" EXCLUDE
PATTERN "ApplicationSettings_template.xml" EXCLUDE
PATTERN "window_settings.ini_for_package" EXCLUDE
PATTERN "window_settings_for_package.ini" EXCLUDE
)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/bin/app/user/window_settings_for_package.ini
DESTINATION user
COMPONENT ${componentName}
RENAME window_settings.ini
)
endfunction(AddSharedToComponent)
@@ -98,51 +98,86 @@ execute_process(
OUTPUT_STRIP_TRAILING_WHITESPACE
)
# Add shared files to full and trial version
AddSharedToComponent(FULLVERSION)
AddSharedToComponent(TRIALVERSION)
AddSharedToComponent(FULL)
AddSharedToComponent(TRIAL)
INSTALL(DIRECTORY
${CMAKE_SOURCE_DIR}/ide_plugins/sublime_text
DESTINATION plugin
COMPONENT FULLVERSION
DESTINATION plugin
COMPONENT FULL
)
INSTALL(DIRECTORY
${CMAKE_SOURCE_DIR}/ide_plugins/vim
DESTINATION plugin
COMPONENT FULL
)
INSTALL(DIRECTORY
${CMAKE_SOURCE_DIR}/bin/app/data/projects
DESTINATION user
COMPONENT FULL
PATTERN "*.coatidb" EXCLUDE
)
INSTALL(DIRECTORY
${CMAKE_SOURCE_DIR}/bin/app/data/projects
DESTINATION user
COMPONENT TRIAL
)
INSTALL(FILES
${CMAKE_SOURCE_DIR}/setup/Linux/coati.desktop
${CMAKE_SOURCE_DIR}/setup/Linux/application-x-coati.xml
DESTINATION setup
COMPONENT FULLVERSION
)
${CMAKE_SOURCE_DIR}/setup/Linux/coati.desktop
${CMAKE_SOURCE_DIR}/setup/Linux/coati-mime.xml
DESTINATION setup
COMPONENT FULL
)
INSTALL(PROGRAMS
${CMAKE_SOURCE_DIR}/setup/Linux/install.sh
${CMAKE_SOURCE_DIR}/setup/Linux/deinstall.sh
${CMAKE_SOURCE_DIR}/setup/Linux/removeConfigs.sh
${CMAKE_SOURCE_DIR}/setup/Linux/Coati_trial.sh
DESTINATION .
COMPONENT TRIALVERSION
)
DESTINATION setup
COMPONENT FULL
)
INSTALL(PROGRAMS
${CMAKE_SOURCE_DIR}/setup/Linux/Coati.sh
DESTINATION .
COMPONENT FULLVERSION
${CMAKE_SOURCE_DIR}/setup/Linux/Coati_trial.sh
DESTINATION .
COMPONENT TRIAL
)
INSTALL(PROGRAMS
${CMAKE_SOURCE_DIR}/setup/Linux/Coati.sh
DESTINATION .
COMPONENT FULL
)
INSTALL(PROGRAMS
${CMAKE_SOURCE_DIR}/bin/app/Release/Coati_upx
DESTINATION .
COMPONENT FULLVERSION
COMPONENT FULL
RENAME Coati
)
INSTALL(PROGRAMS
${CMAKE_SOURCE_DIR}/bin/app/Release/Coati_trial_upx
DESTINATION .
COMPONENT TRIALVERSION
COMPONENT TRIAL
RENAME Coati_trial
)
#INSTALL(TARGETS
#${APP_PROJECT_NAME}
#DESTINATION .
#COMPONENT FULL
#)
#INSTALL(TARGETS
#${TRIAL_PROJECT_NAME}
#DESTINATION .
#COMPONENT TRIAL
#)
# SET(CPACK_GENERATOR "DEB;TGZ")
SET(CPACK_GENERATOR "TGZ")
SET(CPACK_ARCHIVE_COMPONENT_INSTALL "ON")
@@ -150,17 +185,28 @@ SET(CPACK_ARCHIVE_COMPONENT_INSTALL "ON")
string(REGEX REPLACE "^([0-9]+)\\..*" "\\1" VERSION_MAJOR "${GIT_VERSION_NUMBER}")
string(REGEX REPLACE "^[0-9]+\\.([0-9]+).*" "\\1" VERSION_MINOR "${GIT_VERSION_NUMBER}")
string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" VERSION_PATCH "${GIT_VERSION_NUMBER}")
set(VERSION_NUMBER "${VERSION_MAJOR}_${VERSION_MINOR}_${VERSION_PATCH}")
if(${GIT_VERSION_NUMBER} STREQUAL ${VERSION_PATCH})
SET(VERSIONA_PATCH 0)
endif()
string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.[0-9]+-([0-9]+).*" "\\1" VERSION_COMMIT "${GIT_VERSION_NUMBER}")
if(${GIT_VERSION_NUMBER} STREQUAL ${VERSION_COMMIT})
set(VERSION_NUMBER "${VERSION_MAJOR}_${VERSION_MINOR}_${VERSION_PATCH}")
else()
set(VERSION_NUMBER "${VERSION_MAJOR}_${VERSION_MINOR}_${VERSION_PATCH}_${VERSION_COMMIT}")
endif()
SET(CPACK_PACKAGE_NAME "Coati")
SET(CPACK_PACKAGING_INSTALL_PREFIX "")
SET(CPACK_INCLUDE_TOPLEVEL_DIRECTORY 1)
SET(CPACK_PACKAGING_INSTALL_DIRECTORY "Coati")
SET(CPACK_PACKAGE_VERSION ${VERSION_NUMBER})
SET(CPACK_PACKAGE_VENDOR "Coati Software")
SET(CPACK_INSTALL_SCRIPT "${CMAKE_SOURCE_DIR}/cmake/pre_install_linux.cmake")
SET(CPACK_SYSTEM_NAME "${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR}")
SET(CPACK_PACKAGE_FILE_NAME "Coati_${VERSION_NUMBER}_${CPACK_SYSTEM_NAME}")
#SET(CPACK_PACKAGE_EXECUTABLES "Coati")
SET(CPACK_STRIP_FILES "coati/Coati")
SET(CPACK_PACKAGE_CONTACT "astallinger@coati.io")
INCLUDE(CPack)
+13 -13
View File
@@ -11,19 +11,19 @@
# )
#
macro(add_files var_name)
file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
file (RELATIVE_PATH _relPath "${CMAKE_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}")
foreach (_src ${ARGN})
if (_relPath)
list (APPEND ${var_name} "${_relPath}/${_src}")
else()
list (APPEND ${var_name} "${_src}")
endif()
endforeach()
foreach (_src ${ARGN})
if (_relPath)
list (APPEND ${var_name} "${_relPath}/${_src}")
else()
list (APPEND ${var_name} "${_src}")
endif()
endforeach()
if (_relPath)
set(${var_name} ${${var_name}} PARENT_SCOPE)
else()
set(${var_name} ${${var_name}})
endif()
if (_relPath)
set(${var_name} ${${var_name}} PARENT_SCOPE)
else()
set(${var_name} ${${var_name}})
endif()
endmacro()
+8 -4
View File
@@ -2,12 +2,16 @@
find_package(PythonInterp REQUIRED)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_SOURCE_DIR}/script/getSystemString.py"
OUTPUT_VARIABLE SYSSTRING
OUTPUT_STRIP_TRAILING_WHITESPACE
COMMAND ${PYTHON_EXECUTABLE} "${CMAKE_SOURCE_DIR}/script/getSystemString.py"
OUTPUT_VARIABLE SYSSTRING
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set(EXTERNAL_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/../Coati_External")
set(EXTERNAL_SRC "${EXTERNAL_ROOT}/src")
set(EXTERNAL_BUILD "${EXTERNAL_ROOT}/${SYSSTRING}/${CMAKE_BUILD_TYPE}")
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
set(EXTERNAL_BUILD "${EXTERNAL_ROOT}/${SYSSTRING}/Debug")
else()
set(EXTERNAL_BUILD "${EXTERNAL_ROOT}/${SYSSTRING}/Release")
endif()
+26 -3
View File
@@ -1,11 +1,34 @@
# upx
set(upxPath ${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release)
message(STATUS "upx the app")
execute_process(
COMMAND upx --brute ${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release/Coati -o ${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release/Coati_upx
COMMAND rm ${upxPath}/Coati_upx
COMMAND upx --brute ${upxPath}/Coati -o ${upxPath}/Coati_upx
)
message(STATUS "upx the trial")
execute_process(
COMMAND rm ${upxPath}/Coati_trial_upx
COMMAND upx --brute ${upxPath}/Coati_trial -o ${upxPath}/Coati_trial_upx
)
execute_process(
COMMAND upx --brute ${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release/Coati_trial -o
${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release/Coati_trial_upx
COMMAND ${upxPath}/Coati -z /home/vagrant/dev/license.txt
)
execute_process(
COMMAND ${upxPath}/Coati -f -d ${upxPath}/../data/projects/tictactoe/tictactoe.coatiproject
)
execute_process(
COMMAND ${upxPath}/Coati -f -d ${upxPath}/../data/projects/tutorial/tutorial.coatiproject
)
#add_custom_command(
#OUTPUT Coati_upx
#COMMAND upx --brute ${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release/Coati -o ${CMAKE_CURRENT_LIST_DIR}/../bin/app/Release/Coati_upx
#)

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