-
-
Notifications
You must be signed in to change notification settings - Fork 32
Entry tooltips #307
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop/2.7
Are you sure you want to change the base?
Entry tooltips #307
Conversation
81b370f to
d3bec0e
Compare
aa80cb4 to
d861d51
Compare
| this.clazz = null; | ||
| this.recordComponents.clear(); | ||
| this.fields.clear(); | ||
| this.methods.clear(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please double-check that moving the clearing here and clearing fields+methods won't break anything
b4a17b3 to
5f2b17d
Compare
| // Put all main content in one big scroll pane. | ||
| // Ideally there'd be separate javadoc and snippet scroll panes, but multiple scroll pane children | ||
| // of a grid bag parent don't play nice when space is limited. | ||
| // The snippet has its own scroll pane, but wrapping it in this one effectively disables its resizing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If anyone has ideas on how to improve this, please discuss on discord and make a followup PR.
… and timers, respectively
…t's the same class (editor bounds were 0x0 when setting source) navigate to tooltip target entry declaration when showing tooltip
stop excluding curly braces from method and class sources
…rds' getters make RecordGetterFindingVisitor's getter map accessible fix DeclarationSnippetPanel for record component getters
expand RecordGetterFindingVisitor to provide maps of record classes to their fields and methods make EntryTooltip show record field javadocs for record classes make EntryTooltip show record field javadocs for record getters if they don't have their own javadocs
clear fields and methods
…tion navigate to its field instead
remove main content scroll pane border
90eda86 to
18be34f
Compare
Adds #140
based on #304rebasedNotes:
JTextAreas. I've tried usingJEditorPanels instead, and I've tried disabling the drag-to-move feature; neither helped.JToolTiporToolTipManagerbecause I couldn't get a customJToolTipto properly move+resize when the mouse moved to a new token. Instead it uses a customJWindowfor the tooltip and severalTimers to manage it.BaseEditorPanel), but I couldn't get two scroll panes to resize smartly in limited space (at least in aGridBagLayout, used to expand to fill width).Improvements to
RecordGetterFindingVisitor:RecordIndexingVisitorgetName()instead ofgetFullName()Also makes navigating to a record component getter declaration with no explicit declaration navigate to its field instead.
The tooltip:
The tooltip shows the parent, javadocs, and declaration snippet of the entry under the cursor.
Clicking the parent label or tokens within the declaration snippet updates the tooltip with that entry's info; control-clicking navigates to the entry. Control-clicking a top-level class' package navigates to that package. The tooltip may be moved by dragging from anywhere that doesn't have other click functionality.
Tooltips and their interact-ability can each be disabled; configs are in a new
editor.tomlfile. This moves #304's persistent config toeditor.toml.editor.toml:Tasks:
EditorPanel)LineIndexer)add "bread crumbs" back button to go back to previous tooltip contentsnot tooltip-y