mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
win10 laf: decoration for help button in dialog wrapper
This commit is contained in:
@@ -47,6 +47,7 @@ import com.intellij.ui.components.JBScrollPane;
|
||||
import com.intellij.ui.components.panels.NonOpaquePanel;
|
||||
import com.intellij.util.Alarm;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.IconUtil;
|
||||
import com.intellij.util.TimeoutUtil;
|
||||
import com.intellij.util.ui.DialogUtil;
|
||||
import com.intellij.util.ui.JBUI;
|
||||
@@ -543,11 +544,7 @@ public abstract class DialogWrapper {
|
||||
}
|
||||
|
||||
if (hasHelpToMoveToLeftSide) {
|
||||
JButton helpButton = new JButton(getHelpAction());
|
||||
helpButton.putClientProperty("JButton.buttonType", "help");
|
||||
helpButton.setText("");
|
||||
helpButton.setMargin(insets);
|
||||
helpButton.setToolTipText(ActionsBundle.actionDescription("HelpTopics"));
|
||||
JButton helpButton = createHelpButton(insets);
|
||||
panel.add(helpButton, BorderLayout.WEST);
|
||||
}
|
||||
|
||||
@@ -580,6 +577,32 @@ public abstract class DialogWrapper {
|
||||
return panel;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
protected JButton createHelpButton(Insets insets) {
|
||||
final JButton helpButton;
|
||||
if ((SystemInfo.isWindows && UIUtil.isUnderIntelliJLaF() && Registry.is("ide.intellij.laf.win10.ui"))) {
|
||||
helpButton = new JButton(getHelpAction()) {
|
||||
@Override
|
||||
public void paint(Graphics g) {
|
||||
IconUtil.paintInCenterOf(this, g, AllIcons.Windows.WinHelp);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Dimension getPreferredSize() {
|
||||
return new Dimension(AllIcons.Windows.WinHelp.getIconWidth(), AllIcons.Windows.WinHelp.getIconHeight());
|
||||
}
|
||||
};
|
||||
helpButton.setOpaque(false);
|
||||
} else {
|
||||
helpButton = new JButton(getHelpAction());
|
||||
}
|
||||
helpButton.putClientProperty("JButton.buttonType", "help");
|
||||
helpButton.setText("");
|
||||
helpButton.setMargin(insets);
|
||||
helpButton.setToolTipText(ActionsBundle.actionDescription("HelpTopics"));
|
||||
return helpButton;
|
||||
}
|
||||
|
||||
protected boolean shouldAddErrorNearButtons() {
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user