inspection settings: "Edit inspection profile settings" dialog opens settings with misplaced focus (IDEA-161373 )

This commit is contained in:
Dmitry Batkovich
2016-11-30 17:17:49 +03:00
parent d010d44d30
commit 1eed340cde
@@ -154,6 +154,8 @@ public abstract class InspectionToolsConfigurable extends BaseConfigurable
protected void addProfile(InspectionProfileModifiableModel model) {
final SingleInspectionProfilePanel panel = createPanel(model);
myPanels.add(panel);
panel.setVisible(false);
myProfilePanelHolder.add(panel);
myProfiles.getProfilesComboBox().addProfile(model);
myProfiles.getProfilesComboBox().selectProfile(model);
}
@@ -525,7 +527,10 @@ public abstract class InspectionToolsConfigurable extends BaseConfigurable
for (InspectionProfileImpl profile : profiles) {
InspectionProfileModifiableModel inspectionProfile = new InspectionProfileModifiableModel(profile);
modifiableProfiles.add(inspectionProfile);
myPanels.add(createPanel(inspectionProfile));
final SingleInspectionProfilePanel panel = createPanel(inspectionProfile);
myPanels.add(panel);
panel.setVisible(false);
myProfilePanelHolder.add(panel);
}
myProfiles.getProfilesComboBox().reset(modifiableProfiles);
myAuxiliaryRightPanel.showDescription(getSelectedObject().getDescription());
@@ -638,15 +643,14 @@ public abstract class InspectionToolsConfigurable extends BaseConfigurable
@Override
public JComponent getPreferredFocusedComponent() {
return myProfilePanelHolder;
final SingleInspectionProfilePanel panel = getSelectedPanel();
return panel == null ? null : panel.getPreferredFocusedComponent();
}
private void showProfile(InspectionProfileImpl profile) {
final SingleInspectionProfilePanel panel = getProfilePanel(profile);
myProfilePanelHolder.removeAll();
myProfilePanelHolder.add(panel);
panel.setVisible(true);
myProfilePanelHolder.revalidate();
myProfilePanelHolder.repaint();
for (Component component : myProfilePanelHolder.getComponents()) {
component.setVisible(component == panel);
}
}
}