- 
          
- 
                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
remove main content scroll pane border
90eda86    to
    18be34f      
    Compare
  
    | ready! | 
| so excited to take a look at this. expect at least a partial review tonight! | 
…declaration' message show <init> for constructor simple names
add/remove EntryTooltip's global listeners on open/close reset TooltipManager on key presses
bcbc5aa    to
    be44d7d      
    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.
Config
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