InplaceButton (@NotNull Project project, @NotNull Runnable cancelAction, @NotNull Runnable showDialogAndFindUsagesRunnable) { KeyboardShortcut shortcut = UsageViewUtil.getShowUsagesWithSettingsShortcut(); String tooltip = shortcut == null ? FindBundle.message("show.usages.settings.tooltip") : FindBundle.message("show.usages.settings.tooltip.shortcut", KeymapUtil.getShortcutText(shortcut)); return new InplaceButton(tooltip, AllIcons.General.Settings, __ -> { ApplicationManager.getApplication().invokeLater(showDialogAndFindUsagesRunnable, project.getDisposed()); cancelAction.run(); }) { @Override protected void paintHover(Graphics g) { if (ExperimentalUI.isNewUI()) { paintHover(g, false); } } }; }