Commit Graph
144 Commits
Author SHA1 Message Date
Andreas Stallinger 244c9af3c6 src: new signal slot syntax
SLOT()/SIGNAL() -> &class::method()
2017-08-01 12:35:33 +02:00
Eberhard Graether 01864b4d0c ui: Added custom tooltipping to code and graph (issue #195)
* Tooltips show node type with access specifier, reference count and fully qualified name
* Fields and global variables include the type name
* Methods and functinos show whole signature. Gets broken into multiple lines if too long.

Included changes:

* Upgraded to C++14
* fixed clang warnings
* Pass location of .srctrlprj file to build.sh script to load on launch
* Split off QtCodeField for showing highlighted and annotated code fom QtCodeArea
* removed TokenComponentSignature
* added TaskDecoratorDelay

bug id = 195
2017-07-31 12:45:22 +02:00
malte_langkabel f2c7ecbbdf ui: add progress dialog for "show source files" button 2017-07-24 14:20:26 +02:00
Eberhard Graether faae66b304 ui: Fixed search related issues
* select elements when clicking into search bar
* fixed crash and single file mode clearing when fulltext search yields no results
2017-07-20 15:55:31 +02:00
Eberhard Graether 1982f4459a ui: Don't show start window when opening project with double-click
* added menu option to show start window
2017-07-17 17:07:01 +02:00
Eberhard Graether 9d0b86ad98 logic: Show inheritance edges between parents of active symbol and other visible symbols (issue #167)
* add inheritance edges between parents of active symbol and other visible symbols
* add dashed inheritance edges when symbols are no direct decendants
* inheritance edges are also respected in layouting, putting base/derived classes in the correct top/bottom spot now

bug id = 167
2017-07-16 18:40:59 +02:00
Eberhard Graether 997f952b86 ui: Show recent bookmarks in bookmarks menu (issue #414)
bug id = 414
2017-07-12 15:01:14 +02:00
Eberhard Graether a2554a9f75 ui: Show progress dialog for maven source group within parent window 2017-06-28 15:43:20 +02:00
Eberhard Graether 293a2a84c3 ui: Added Edit Project button below error table
* use leading uppercase letter in Log View UI elements
2017-06-27 14:21:48 +02:00
Eberhard Graether ad3169c3c0 src: Fixes for release
* clear references count when clearing code view
* fixed scrolling to character in overview lists
* fixed aggregation activation shown in history menu
* fixed same snippet being added twice
* Sourcetrail [Trial] as window title
* fixed undoing trail expand will always reactivate symbol
2017-06-20 15:18:30 +02:00
Eberhard Graether 24894aa96f ui: More fixes for release
* Fixed graph resizing invoked during animation
* Clearin history when clearing UndoRedoController
* Fixed no hatching in single code view file button
2017-06-08 12:45:56 +02:00
Eberhard Graether 3e62367af0 src: More fixes for release
* Show declname in java import error
* Don't clear window stack when saving preferences
* Fixed spacing in source group UI, status view and error view
* Resize graph scene rect when widget is resized
* Graph node centering respect no animation preference
* Fixed undoing of view commands
* Avoid scrollbar jump when restoring graph scroll position
* Deactivate local symbols in code when clicking into empty space
2017-06-08 00:35:31 +02:00
Eberhard Graether 503ca76a40 ui: Use window decorations on dialog windows (issue #376)
* added SubWindow flag to QtWindow to either use window decorations or show window within main window
* fixes black borders in some Linux window managers

bug id = 376

fortune cookie message = Your skill will accomplish what the force of many others cannot.
2017-06-07 14:40:16 +02:00
Eberhard Graether 71b3bdb26b logic: Improved code view performance
* Don't set stylesheet for every token activation
* Streamlined code area creation steps
* Delay most syntax highlighting until lines become visible
2017-06-05 23:34:20 +02:00
Eberhard Graether de645be37a logic: Refactored Code View to process all contents in one update
* Use unified showCodeSnippets method for setting file information on CodeView
* Made async initial file and snippet expansion synced
* Add ScrollParams API to CodeView
* Regard scope size when scrolling to definition
* Only use QtThreadedLambdaFunctor in QtCodeView now
2017-06-05 14:23:43 +02:00
Eberhard Graether b79891693b ui: Fixed errors always shown after indexing 2017-05-31 13:44:58 +02:00
Eberhard Graether 29cfbe0f66 logic: error limit and better user experience (issue #385)
* only show up to 1000 errors in table and code view
* click button in bottom right of error table to show all
* same error order in code and table
* highlight error line when switching reference in code view
* improved error view performance

bug id = 385
2017-05-30 23:11:20 +02:00
Eberhard Graether a34abe6b4b ui: fixes and improvements in graph
* use bezier edges for aggregations
* fixed expanding nodes in trail graph makes trouble
* fixed hovering of edges at arrow
2017-05-30 15:08:01 +02:00
Eberhard Graether 9256618f7c ui: Extended project setup to support creation and editing of Source Groups (issue #230)
* Turned QtProjectWizzard into window for Source Group ui
* Clicking into FilePicker when empty will open dialog right away
* Fixed environment variable use throughout all Source Group path values
* Moved Preferences to QtPreferencesWindow

bug id = 230

fortune cookie message = Zwischen dir und deinen Freunden besteht echte Freundschaft.
2017-05-29 17:08:28 +02:00
Eberhard Graether 65b5bd47f6 logic: Fixed indexing progress file count in status bar and status view (issue #387)
bug id = 387
2017-05-19 14:26:52 +02:00
malte_langkabel 6cb2119cce src: remove unused includes 2017-05-17 12:10:22 +02:00
malte_langkabel c551c9a1dd logic: add name delimiter to NameHierarchy
* NameHierarchy now looks like this: <delimiter>\tm<all the rest>
* made new baseclasses for SettingsMigration and SettingsMigrator
* Use the migration system for SqliteBookmarkStorage as well
2017-05-16 13:08:12 +02:00
Eberhard Graether c94b5f34a3 ui: Create bookmarks from graph context menu for node under mouse cursor (issue #373)
bug id = 373
2017-05-15 00:45:50 +02:00
Eberhard Graether f4caacacf2 ui: Added history of last active symbols to UI and menu (issue 151)
* holding down back or forward button shows list of current back-forward stack
* added narrow button between back and forward to show the list
* added History menu
* moved back and forward actions to History menu
* show chronological list of recently active symbols in History menu

bug id = 151

fortune cookie message = Dein Geschäft wird gut laufen und expandieren.
2017-05-09 17:14:43 +02:00
Eberhard Graether e5cad53e85 ui: Click edges in trail to show source location 2017-05-06 22:56:17 +02:00
Eberhard Graether d096106ec5 ui: improvements on trail layout
* increased spacing around graph
* fixed graph lagging on message focus out
* fixed level assignment fails
* fixed dead ends in cyclic graph removal
* improved node positioning by grouping to same average position
* fixed graph image export not centering graph
* fixed black dot at graph origin
* show status updates while creating trails
2017-05-04 16:46:17 +02:00
Eberhard Graether 706119ebcc data: indexer processes
* TaskBuildIndex starts seperate indexer processes and communicates via shared memory
* indexer processes get restarted if they fail
* indexer processes are killed when the app closes or crashes
* added utility class SharedMemory to allocate and access shared memory, providing basic data structures
* added SharedMemoryGarbageCollector for keeping track of running instances and cleaning up shared memory in case of a crash
* show errors for source files that crashed during indexing
* added basic exception handling to task scheduling
* added option to turn off processes and use threads in preferences, but still use shared memory

fortune cookie message = Good news from someone dear is coming soon.
2017-05-04 15:50:59 +02:00
malte_langkabel 054b8fab17 logic: reduce access to filesystem while indexing
* use canonical filepath cache in cxx indexer
* made constructors of FilePath explicit
* use FilePath at more places instead of string
* forward declares FilePath wherever possible
2017-05-04 10:55:16 +02:00
Eberhard Graether b98444c15e ui: styled trail navigation
* added icons to buttons
* added toggle for collapsing and expanding controls
* added controls visibility to app settings
* fixed low contrast for disabled buttons in bright color scheme
2017-04-26 15:38:55 +02:00
Eberhard Graether 0468168d61 ui: Fixes and improvements for bookmarks
* moved bookmark buttons behind search bar
* suggest qualified name when creating, file name for files
* fixed bug when updating bookmark category
* changed comment toggle arrow
* changed edit and delete icons
* fixed undo for edge bookmarks
* keep categories always alphabetical regardless of subsorting
* keep category expansion state when opening and closing browser
* removed QtBookmarkBar, moved logic into QtBookmarkView
* added bookmarks Menu with shortcuts
	Ctrl + D: Create Bookmark
	Ctrl + B: Bookmark Manager
2017-04-26 00:33:34 +02:00
Eberhard Graether f0b7dcdcdd ui: Show call graphs, inheritance trees and include trees for active symbol (issue 249 337)
* Added TrailLayouter with Sugiyama dependency layouting
* Layouter supports horizontal and vertical layouts
* Added basic ui to graph view for showing incoming and outgoing paths
* Added depth slider, with infinity at maximum
* Disable trail ui when not available
* Added trail messages to undo stack and only use last one when undoing
* Added QtGraphLineBezier for trail graphs and refactored other line types
* Disabled edge activation for trail layouts, shown only visually
* Highlight all connected edges when hovering a node in trail layout
* Use different color when highlighting call edges for better contrast
* Fixed BucketLayouter issue when edge does not leave node
* Increased click area for angled edges

bug id = 249 337

fortune cookie message = Answer just what the heart prompts to you.
2017-04-24 01:14:53 +02:00
Eberhard Graether 9d718d6a87 logic: Show unknown progress dialog when refreshing (issue 341)
* refactored dialog handling
* Application always provides a DialogView instance

bug id = 341
2017-04-19 13:04:46 +02:00
Eberhard Graether 63087913bd data: Option to run only C/C++ preprocessor when indexing (issue 297)
* Added as checkbox to indexing start dialog
* Only shown for C/C++ projects
* Files will be marked incomplete
2017-04-18 22:11:20 +02:00
Eberhard Graether 8dc5ac7cbe data: stop indexing of files with fatal errors and store them as incomplete (issue 358)
* avoid AST traversial for CXX translation units with fatal errors
* save all files within those translation units as incomplete
* show number of complete files in finished indexing dialog and overview stats
* display incomplete files hatched in graph view
* display incomplete file titles hatched in code view
* mention file incompleteness in tooltips
* removed derived Indexer classes and set ParserType via template parameter instead
* moved getSourceFileFromCDB from IndexerCxxCdb to IndexerCommandCxxCdb

bug id = 358
2017-04-15 01:02:09 +02:00
Eberhard Graether 6ba93ca39f src: more bug fixes
* fixed snippets added twice on token reactivation for errors and fulltext search results
* fixed colorscheme gets refreshed when cancelling preferences
* scroll to first line in errors table after indexing and showing view
* fixed file not properly expanded when snippet covers full file
* fixed project type naming in project setup
* fixed set delimiter of NameHierarchy for projects that can't be loaded yet
* changed language order for project setup
2017-04-07 17:14:34 +02:00
Eberhard Graether 4e9ba897ac src: Refactored TokenLocation classes to SourceLocation classes
* Removed TokenLocationLine
* decoupled TokenLocationFile from TokenLocationCollection
* save vector of Token ids to SourceLocation
* refactored SourceLocationFile::getFilteredByLines()
* refactored snippet creation
2017-03-25 02:05:48 +01:00
Eberhard Graether 630009a2ba logic: Refactored undo redo stack
* Store MessageActivateTokens instead of original view messages
* Renamed FeatureController to ActivationController
* Remove all non-activation messages from undo redo stack after reindexing project
* Added MessageShowReference to undo redo stack
* Added MessageScrollGraph for restoring graph view scroll position
* Fixed MessageGraphNodeMove not saved for bundles
* Refactored tokenIds and nodeNames in SearchMatch and MessageActivateTokens
* Refactored SearchController
* Fixed file expansion on undoing/redoing after switching code view mode
* Fixed redundant graph animation due to present qualifier nodes
* Fixed no restoring of graph node expansion when showing overview in between
2017-03-16 23:24:33 +01:00
Eberhard Graether 77ef076c88 ui: Show definition in code view when clicking active node in graph 2017-02-21 00:37:19 +01:00
Eberhard Graether 02850baf9c logic: Fixed error activation from code caused another show error message 2017-02-21 00:14:02 +01:00
Eberhard Graether d02e3e74d0 ui: Fixed moving bundle nodes was not stored in undo stack 2017-02-21 00:10:49 +01:00
Eberhard Graether a6bc9c5465 ui: Bigger offset for bigger circle in graph node bundle 2017-02-13 23:02:53 +01:00
Eberhard Graether d527991b46 src: Reviewed old files touched by bookmarks commit
* Removed some unused changes
* Disabled "No IDE connected" message in status bar
* Use threaded functor in status bar view
2017-02-13 20:55:37 +01:00
Eberhard Graether 259b112080 logic: Fixed code view single not cleared properly in some cases 2017-02-13 13:20:20 +01:00
wrongway88 97fd40fe9b ui: bookmarks
can now bookmark tokens
2017-02-12 15:06:07 +01:00
Eberhard Graether ba984121a2 ui: Fixed jumping to character in overview bundle broken when _ present 2017-02-11 16:36:40 +01:00
Eberhard Graether b13dbf2f2d ui: Fixed issues with error UI
* load error icon only once and reuse
* fixed error not activated when selecting from list

bug id = 287
2017-02-10 16:21:21 +01:00
malte_langkabel 1bb25140a7 ui: renamed undefined to non-indexed and made node/edge names more readable 2017-02-06 16:18:00 +01:00
malte_langkabel be1a44a763 ui: file clearing progress
* display some progress information when clearing files
2017-02-06 13:02:15 +01:00
Eberhard Graether 52b0cd2017 ui: redesigned graph overview and use new list layouting within overview bundles
* overview bundles imitate style of bundled node type
* removed bundle for built-in types
* show contents of overview bundle in vertical list layouted with new ListLayouter
* nodes starting with the same letter are grouped with the letter displayed above
* pressing the letter key will scroll to the group
* also use this list layouting for namespace & package contents
* renamed BucketGrid to BucketLayouter
* moved used functions of GraphPostProcessor to GraphViewStyle and removed GraphPostProcessor

fortune cookie message = Don't be afraid to take that big step
2017-02-02 13:29:40 +01:00
Eberhard Graether 00cba732df ui: Added style for graph zoom buttons
* moved zoom buttons to QtGraphicsView due to stylesheet and repositioning on resize
2017-01-30 16:28:32 +01:00