From dbf5638826a882b1b3f036d74f9f0af0974f6afa Mon Sep 17 00:00:00 2001
From: "maarten.coene"
Date: Wed, 26 Mar 2014 23:25:55 +0000
Subject: [PATCH] New attempt to fix a NPE when adding IvyIDEA facet with
IntelliJ 13.1 (fixes issue 132)
---
src/main/java/META-INF/plugin.xml | 8 ++++++--
.../intellij/facet/ui/BasicSettingsTab.java | 4 ++--
.../ui/components/ConfigurationSelectionTable.java | 14 +++++++++-----
3 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/src/main/java/META-INF/plugin.xml b/src/main/java/META-INF/plugin.xml
index 4c620289..7d93aaf2 100644
--- a/src/main/java/META-INF/plugin.xml
+++ b/src/main/java/META-INF/plugin.xml
@@ -4,7 +4,7 @@
Features:
- - Apache Ivy integration (up to v2.3.0); no need for external ant build scripts to be called
+ - Apache Ivy integration (up to v2.4.0-rc1); no need for external ant build scripts to be called
- Automatic ivy configuration of modules using facets (for modules containing an ivy.xml file)
- Detection of dependencies that are really other intellij modules in the same project; these are added as module references
- Detect source/document/jar type ivy artifacts in dependencies and add them as such to the module
@@ -16,6 +16,10 @@
+ 1.0.10
+
+ - Fixed compatibility issue with IntelliJ 13.1
+
1.0.9
- Added an extra configuration option to always attach the source/javadoc artifacts, even when
@@ -95,7 +99,7 @@
]]>
- 1.0.9
+ 1.0.10
Guy Mahieu
diff --git a/src/main/java/org/clarent/ivyidea/intellij/facet/ui/BasicSettingsTab.java b/src/main/java/org/clarent/ivyidea/intellij/facet/ui/BasicSettingsTab.java
index 06e4280f..d206634b 100644
--- a/src/main/java/org/clarent/ivyidea/intellij/facet/ui/BasicSettingsTab.java
+++ b/src/main/java/org/clarent/ivyidea/intellij/facet/ui/BasicSettingsTab.java
@@ -126,7 +126,7 @@ private void updateIvySettingsFileTextfield() {
}
private void updateConfigurationsTable() {
- tblConfigurationSelection.setEnabled(chkOnlyResolveSpecificConfigs.isSelected());
+ tblConfigurationSelection.setConfigurationsEnabled(chkOnlyResolveSpecificConfigs.isSelected());
}
private void updateIvySettingsUIState() {
@@ -274,7 +274,7 @@ public void reset() {
} else {
tblConfigurationSelection.setModel(new ConfigurationSelectionTableModel());
selectedConfigurations = new HashSet();
- tblConfigurationSelection.setEnabled(false);
+ tblConfigurationSelection.setConfigurationsEnabled(false);
}
updateUI();
}
diff --git a/src/main/java/org/clarent/ivyidea/intellij/facet/ui/components/ConfigurationSelectionTable.java b/src/main/java/org/clarent/ivyidea/intellij/facet/ui/components/ConfigurationSelectionTable.java
index 246ea11b..55991b24 100644
--- a/src/main/java/org/clarent/ivyidea/intellij/facet/ui/components/ConfigurationSelectionTable.java
+++ b/src/main/java/org/clarent/ivyidea/intellij/facet/ui/components/ConfigurationSelectionTable.java
@@ -19,7 +19,6 @@
import com.intellij.ui.BooleanTableCellEditor;
import com.intellij.ui.BooleanTableCellRenderer;
import com.intellij.util.ui.Table;
-import com.intellij.util.ui.UIUtil;
import org.apache.ivy.core.module.descriptor.Configuration;
import javax.swing.*;
@@ -39,9 +38,10 @@
public class ConfigurationSelectionTable extends Table {
+ private boolean configurationsEnabled = true;
+
public ConfigurationSelectionTable() {
super(new ConfigurationSelectionTableModel());
- setForeground(UIUtil.getTableForeground());
initComponents();
}
@@ -50,6 +50,10 @@ public void setModel(TableModel dataModel) {
initComponents();
}
+ public void setConfigurationsEnabled(boolean configurationsEnabled) {
+ this.configurationsEnabled = configurationsEnabled;
+ }
+
public Set getSelectedConfigurations() {
return ((ConfigurationSelectionTableModel) getModel()).getSelectedConfigurations();
}
@@ -71,7 +75,7 @@ private void initComponents() {
getColumnModel().getColumn(0).setCellRenderer(new BooleanTableCellRenderer() {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
final Component rendererComponent = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
- rendererComponent.setEnabled(table.isEnabled());
+ rendererComponent.setEnabled(configurationsEnabled);
return rendererComponent;
}
});
@@ -103,7 +107,7 @@ public Component getTableCellRendererComponent(JTable table, Object value, boole
setToolTipText(null);
rendererComponent.setFont(regularFont);
}
- rendererComponent.setEnabled(table.isEnabled());
+ rendererComponent.setEnabled(configurationsEnabled);
return rendererComponent;
}
});
@@ -112,7 +116,7 @@ public Component getTableCellRendererComponent(JTable table, Object value, boole
getColumnModel().getColumn(2).setCellRenderer(new DefaultTableCellRenderer() {
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
final Component rendererComponent = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
- rendererComponent.setEnabled(table.isEnabled());
+ rendererComponent.setEnabled(configurationsEnabled);
return rendererComponent;
}
});