Revision: 6682
          http://sourceforge.net/p/jump-pilot/code/6682
Author:   ma15569
Date:     2021-12-08 05:43:53 +0000 (Wed, 08 Dec 2021)
Log Message:
-----------
Substituded Utils.purgenoData methodwith rasterImageLayer.getValues method

Modified Paths:
--------------
    core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java
    
core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java

Modified: 
core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java
===================================================================
--- core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java   
2021-12-08 05:39:14 UTC (rev 6681)
+++ core/trunk/src/org/openjump/core/rasterimage/styler/ui/IntervalPanel.java   
2021-12-08 05:43:53 UTC (rev 6682)
@@ -21,7 +21,6 @@
 import org.openjump.core.rasterimage.styler.ColorUtils;
 import org.openjump.core.rasterimage.styler.RasterClassifier1D;
 import org.openjump.core.rasterimage.styler.RasterStylesExtension;
-import org.openjump.core.rasterimage.styler.Utils;
 import org.openjump.core.rasterimage.styler.ui.ColorsTablePanel.TableType;
 
 import com.vividsolutions.jump.util.Range;
@@ -33,418 +32,438 @@
  */
 public class IntervalPanel extends javax.swing.JPanel {
 
-    /**
-     * Creates new form IntervalPanel
-     * @param parent parent Component
-     * @param rasterImageLayer rasterImageLayer to symbolize
-     * @param minMaxValues min and max pixel values for this image
-     */
-    public IntervalPanel(Component parent, RasterImageLayer rasterImageLayer, 
Range minMaxValues) {
+       /**
+        * Creates new form IntervalPanel
+        * 
+        * @param parent           parent Component
+        * @param rasterImageLayer rasterImageLayer to symbolize
+        * @param minMaxValues     min and max pixel values for this image
+        */
+       public IntervalPanel(Component parent, RasterImageLayer 
rasterImageLayer, Range minMaxValues) {
 
-        initComponents();
-        this.parent = parent;
-        this.rasterImageLayer = rasterImageLayer;
-        this.minMaxValues = minMaxValues;
-        
-        fixComponents();
-    }
+               initComponents();
+               this.parent = parent;
+               this.rasterImageLayer = rasterImageLayer;
+               this.minMaxValues = minMaxValues;
 
-    public void reset() {
-        try {
-            
jComboBox_Method.setSelectedItem(classMethods_m.get(ClassificationMethod.JENKS));
-            jTextField_Classes.setText("5");
-            jComboBox_Gradient.setSelectedIndex(0);
-            rampAll();
-        } catch (Exception ex) {
-            Logger.error(ex);
-        }
-    }
+               fixComponents();
+       }
 
-    /**
-     * This method is called from within the constructor to initialize the 
form.
-     * WARNING: Do NOT modify this code. The content of this method is always
-     * regenerated by the Form Editor.
-     */
-    private void initComponents() {
-        java.awt.GridBagConstraints gridBagConstraints;
+       public void reset() {
+               try {
+                       
jComboBox_Method.setSelectedItem(classMethods_m.get(ClassificationMethod.JENKS));
+                       jTextField_Classes.setText("5");
+                       jComboBox_Gradient.setSelectedIndex(0);
+                       rampAll();
+               } catch (final Exception ex) {
+                       Logger.error(ex);
+               }
+       }
 
-        jLabel_Method = new javax.swing.JLabel();
-        jComboBox_Method = new javax.swing.JComboBox();
-        jButton_Values = new javax.swing.JButton();
-        jLabel_Classes = new javax.swing.JLabel();
-        jTextField_Classes = new javax.swing.JTextField();
-        jPanel_Table = new javax.swing.JPanel();
-        jButton_AddRow = new javax.swing.JButton();
-        jButton_RemoveRow = new javax.swing.JButton();
-        jButton_Ramp = new javax.swing.JButton();
+       /**
+        * This method is called from within the constructor to initialize the 
form.
+        * WARNING: Do NOT modify this code. The content of this method is 
always
+        * regenerated by the Form Editor.
+        */
+       private void initComponents() {
+               java.awt.GridBagConstraints gridBagConstraints;
 
-        setMinimumSize(new java.awt.Dimension(365, 160));
-        setPreferredSize(new java.awt.Dimension(365, 160));
-        addComponentListener(new java.awt.event.ComponentAdapter() {
-            public void componentShown(java.awt.event.ComponentEvent evt) {
-                formComponentShown(evt);
-            }
-        });
-        java.awt.GridBagLayout layout = new java.awt.GridBagLayout();
-        layout.columnWidths = new int[] {0, 5, 0, 5, 0};
-        layout.rowHeights = new int[] {0, 5, 0, 5, 0, 5, 0, 5, 0};
-        setLayout(layout);
+               jLabel_Method = new javax.swing.JLabel();
+               jComboBox_Method = new javax.swing.JComboBox();
+               jButton_Values = new javax.swing.JButton();
+               jLabel_Classes = new javax.swing.JLabel();
+               jTextField_Classes = new javax.swing.JTextField();
+               jPanel_Table = new javax.swing.JPanel();
+               jButton_AddRow = new javax.swing.JButton();
+               jButton_RemoveRow = new javax.swing.JButton();
+               jButton_Ramp = new javax.swing.JButton();
 
-        java.util.ResourceBundle bundle = 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle");
 // NOI18N
-        
jLabel_Method.setText(bundle.getString("IntervalPanel.jLabel.method")); // 
NOI18N
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 0;
-        add(jLabel_Method, gridBagConstraints);
+               setMinimumSize(new java.awt.Dimension(365, 160));
+               setPreferredSize(new java.awt.Dimension(365, 160));
+               addComponentListener(new java.awt.event.ComponentAdapter() {
+                       @Override
+                       public void 
componentShown(java.awt.event.ComponentEvent evt) {
+                               formComponentShown(evt);
+                       }
+               });
+               final java.awt.GridBagLayout layout = new 
java.awt.GridBagLayout();
+               layout.columnWidths = new int[] { 0, 5, 0, 5, 0 };
+               layout.rowHeights = new int[] { 0, 5, 0, 5, 0, 5, 0, 5, 0 };
+               setLayout(layout);
 
-        jComboBox_Method.setModel(new javax.swing.DefaultComboBoxModel<>(new 
String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
-        
jComboBox_Method.addActionListener(this::jComboBox_MethodActionPerformed);
+               final java.util.ResourceBundle bundle = java.util.ResourceBundle
+                               
.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle"); // NOI18N
+               
jLabel_Method.setText(bundle.getString("IntervalPanel.jLabel.method")); // 
NOI18N
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 0;
+               add(jLabel_Method, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 2;
-        gridBagConstraints.gridy = 0;
-        gridBagConstraints.gridwidth = 3;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
-        gridBagConstraints.ipadx = 3;
-        add(jComboBox_Method, gridBagConstraints);
+               jComboBox_Method.setModel(
+                               new javax.swing.DefaultComboBoxModel<>(new 
String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
+               
jComboBox_Method.addActionListener(this::jComboBox_MethodActionPerformed);
 
-        
jButton_Values.setText(bundle.getString("IntervalPanel.jButton.RampAll")); // 
NOI18N
-        jButton_Values.addActionListener(this::jButton_ValuesActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 2;
+               gridBagConstraints.gridy = 0;
+               gridBagConstraints.gridwidth = 3;
+               gridBagConstraints.fill = 
java.awt.GridBagConstraints.HORIZONTAL;
+               gridBagConstraints.ipadx = 3;
+               add(jComboBox_Method, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 4;
-        gridBagConstraints.gridy = 4;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
-        add(jButton_Values, gridBagConstraints);
+               
jButton_Values.setText(bundle.getString("IntervalPanel.jButton.RampAll")); // 
NOI18N
+               
jButton_Values.addActionListener(this::jButton_ValuesActionPerformed);
 
-        
jLabel_Classes.setText(bundle.getString("IntervalPanel.jLabel.Classes")); // 
NOI18N
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 2;
-        add(jLabel_Classes, gridBagConstraints);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 4;
+               gridBagConstraints.gridy = 4;
+               gridBagConstraints.fill = 
java.awt.GridBagConstraints.HORIZONTAL;
+               add(jButton_Values, gridBagConstraints);
 
-        jTextField_Classes.setText("5");
-        jTextField_Classes.setMinimumSize(new java.awt.Dimension(70, 20));
-        jTextField_Classes.setPreferredSize(new java.awt.Dimension(70, 20));
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 2;
-        gridBagConstraints.gridy = 2;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
-        gridBagConstraints.weightx = 1.0;
-        add(jTextField_Classes, gridBagConstraints);
+               
jLabel_Classes.setText(bundle.getString("IntervalPanel.jLabel.Classes")); // 
NOI18N
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 2;
+               add(jLabel_Classes, gridBagConstraints);
 
-        jPanel_Table.setBorder(javax.swing.BorderFactory.createEtchedBorder());
-        jPanel_Table.setName(""); // NOI18N
-        jPanel_Table.setLayout(new java.awt.BorderLayout());
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 8;
-        gridBagConstraints.gridwidth = 5;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
-        gridBagConstraints.weighty = 0.5;
-        add(jPanel_Table, gridBagConstraints);
+               jTextField_Classes.setText("5");
+               jTextField_Classes.setMinimumSize(new java.awt.Dimension(70, 
20));
+               jTextField_Classes.setPreferredSize(new java.awt.Dimension(70, 
20));
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 2;
+               gridBagConstraints.gridy = 2;
+               gridBagConstraints.fill = 
java.awt.GridBagConstraints.HORIZONTAL;
+               gridBagConstraints.weightx = 1.0;
+               add(jTextField_Classes, gridBagConstraints);
 
-        
jButton_AddRow.setText(bundle.getString("IntervalPanel.jButton.AddRow")); // 
NOI18N
-        jButton_AddRow.addActionListener(this::jButton_AddRowActionPerformed);
+               
jPanel_Table.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+               jPanel_Table.setName(""); // NOI18N
+               jPanel_Table.setLayout(new java.awt.BorderLayout());
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 8;
+               gridBagConstraints.gridwidth = 5;
+               gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
+               gridBagConstraints.weighty = 0.5;
+               add(jPanel_Table, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 6;
-        add(jButton_AddRow, gridBagConstraints);
+               
jButton_AddRow.setText(bundle.getString("IntervalPanel.jButton.AddRow")); // 
NOI18N
+               
jButton_AddRow.addActionListener(this::jButton_AddRowActionPerformed);
 
-        
jButton_RemoveRow.setText(bundle.getString("IntervalPanel.jButton.RemoveRow")); 
// NOI18N
-        
jButton_RemoveRow.addActionListener(this::jButton_RemoveRowActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 6;
+               add(jButton_AddRow, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 2;
-        gridBagConstraints.gridy = 6;
-        add(jButton_RemoveRow, gridBagConstraints);
+               
jButton_RemoveRow.setText(bundle.getString("IntervalPanel.jButton.RemoveRow")); 
// NOI18N
+               
jButton_RemoveRow.addActionListener(this::jButton_RemoveRowActionPerformed);
 
-        jButton_Ramp.setText(bundle.getString("IntervalPanel.jButton.Ramp")); 
// NOI18N
-        jButton_Ramp.addActionListener(this::jButton_RampActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 2;
+               gridBagConstraints.gridy = 6;
+               add(jButton_RemoveRow, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 4;
-        gridBagConstraints.gridy = 6;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
-        add(jButton_Ramp, gridBagConstraints);
-    }
+               
jButton_Ramp.setText(bundle.getString("IntervalPanel.jButton.Ramp")); // NOI18N
+               
jButton_Ramp.addActionListener(this::jButton_RampActionPerformed);
 
-    private void jButton_ValuesActionPerformed(java.awt.event.ActionEvent evt) 
{
-        try {
-            rampAll();
-        } catch (Exception ex) {
-            Logger.error(ex);
-        }
-    }
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 4;
+               gridBagConstraints.gridy = 6;
+               gridBagConstraints.fill = 
java.awt.GridBagConstraints.HORIZONTAL;
+               add(jButton_Ramp, gridBagConstraints);
+       }
 
-    private void jButton_AddRowActionPerformed(java.awt.event.ActionEvent evt) 
{
-        addRow();
-    }
+       private void jButton_ValuesActionPerformed(java.awt.event.ActionEvent 
evt) {
+               try {
+                       rampAll();
+               } catch (final Exception ex) {
+                       Logger.error(ex);
+               }
+       }
 
-    private void jButton_RemoveRowActionPerformed(java.awt.event.ActionEvent 
evt) {
-        removeRow();
-    }
+       private void jButton_AddRowActionPerformed(java.awt.event.ActionEvent 
evt) {
+               addRow();
+       }
 
-    private void jButton_RampActionPerformed(java.awt.event.ActionEvent evt) {
-        try {
-            rampColors();
-        } catch (Exception ex) {
-            Logger.error(ex);
-        }
-    }
+       private void 
jButton_RemoveRowActionPerformed(java.awt.event.ActionEvent evt) {
+               removeRow();
+       }
 
-    private void jComboBox_MethodActionPerformed(java.awt.event.ActionEvent 
evt) {
-        // TODO add your handling code here:
-    }
+       private void jButton_RampActionPerformed(java.awt.event.ActionEvent 
evt) {
+               try {
+                       rampColors();
+               } catch (final Exception ex) {
+                       Logger.error(ex);
+               }
+       }
 
-    private void formComponentShown(java.awt.event.ComponentEvent evt) {
-        
-        if(firstTimeShown) {
-            firstTimeShown = false;
-            try {
-                rampAll();
-            } catch (Exception ex) {
-                Logger.error(ex);
-            }
-        }
-        
-    }
+       private void jComboBox_MethodActionPerformed(java.awt.event.ActionEvent 
evt) {
+               // TODO add your handling code here:
+       }
 
+       private void formComponentShown(java.awt.event.ComponentEvent evt) {
 
-    // Variables declaration - do not modify//GEN-BEGIN:variables
-    private javax.swing.JButton jButton_AddRow;
-    private javax.swing.JButton jButton_Ramp;
-    private javax.swing.JButton jButton_RemoveRow;
-    private javax.swing.JButton jButton_Values;
-    private javax.swing.JComboBox jComboBox_Method;
-    private javax.swing.JLabel jLabel_Classes;
-    private javax.swing.JLabel jLabel_Method;
-    private javax.swing.JPanel jPanel_Table;
-    private javax.swing.JTextField jTextField_Classes;
-    // End of variables declaration//GEN-END:variables
+               if (firstTimeShown) {
+                       firstTimeShown = false;
+                       try {
+                               rampAll();
+                       } catch (final Exception ex) {
+                               Logger.error(ex);
+                       }
+               }
 
-    private void fixComponents() {
-        
-        classMethods_m.put(ClassificationMethod.EQUAL_RANGE, 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.EqualInterval"));
-        classMethods_m.put(ClassificationMethod.GIVEN_INTERVAL, 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.GivenInterval"));
-        classMethods_m.put(ClassificationMethod.JENKS, 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.Jenks"));
-        classMethods_m.put(ClassificationMethod.MAX_BREAKS, 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.MaxBreaks"));
-        classMethods_m.put(ClassificationMethod.MEAN_STDEV, 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.MeanStDev"));
-        classMethods_m.put(ClassificationMethod.QUANTILE, 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.Quantiles"));
-        
-        jComboBox_Method.removeAllItems();
-        
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.EQUAL_RANGE));
-        
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.GIVEN_INTERVAL));
-        
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.JENKS));
-        
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.MAX_BREAKS));
-        
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.MEAN_STDEV));
-        
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.QUANTILE));
-        
jComboBox_Method.setSelectedItem(classMethods_m.get(ClassificationMethod.JENKS));
+       }
 
-        // Listener
-        jComboBox_Method.addActionListener (new ActionListener () {
-            @Override
-            public void actionPerformed(ActionEvent e) {
-                
-                ClassificationMethod classMethod = 
getKeyByValue(classMethods_m, jComboBox_Method.getSelectedItem().toString());
-                if(classMethod == ClassificationMethod.GIVEN_INTERVAL) {
-                    
jLabel_Classes.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.jLabel.classwidth"));
-                } else {
-                    
jLabel_Classes.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.jLabel.Classes"));
-                }
-                
-            }
-        });
-        
-        // Color ramps       
-        jComboBox_Gradient = GUIUtils.createStandardGradientComboBox(200, 18);
+       // Variables declaration - do not modify//GEN-BEGIN:variables
+       private javax.swing.JButton jButton_AddRow;
+       private javax.swing.JButton jButton_Ramp;
+       private javax.swing.JButton jButton_RemoveRow;
+       private javax.swing.JButton jButton_Values;
+       private javax.swing.JComboBox jComboBox_Method;
+       private javax.swing.JLabel jLabel_Classes;
+       private javax.swing.JLabel jLabel_Method;
+       private javax.swing.JPanel jPanel_Table;
+       private javax.swing.JTextField jTextField_Classes;
+       // End of variables declaration//GEN-END:variables
 
-        java.awt.GridBagConstraints gridBagConstraints = new 
java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 2;
-        gridBagConstraints.gridy = 4;
-        gridBagConstraints.gridwidth = 1;
-        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
-        gridBagConstraints.weighty = 0.0;
-        gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
-        add(jComboBox_Gradient, gridBagConstraints);
-        
-        GUIUtils.addGradientComboBoxToList(jComboBox_Gradient);
-        
-    }
-    
-    private void rampAll() throws Exception {
-        
-        int classesCount = 5;
-        try {
-            classesCount = Integer.parseInt(jTextField_Classes.getText());
-        } catch(Exception ex) {
-                JOptionPane.showMessageDialog(
-                this,
-                
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
-                        
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.numberOfClassesError"),
-                RasterStylesExtension.extensionName,
-                JOptionPane.WARNING_MESSAGE);
-            return;
-        }
-        double classWidth = 0;
-        
-        double[] breaks = null;
-        double[] rasterData = 
Utils.purgeNoData(rasterImageLayer.getActualRasterData(),rasterImageLayer);
-        
-        ClassificationMethod classMethod = getKeyByValue(classMethods_m, 
jComboBox_Method.getSelectedItem().toString());
-        switch (classMethod) {
-            
-            case EQUAL_RANGE:
-                breaks = Classifier1D.classifyEqualRange(rasterData, 
classesCount);
-                break;
-            case GIVEN_INTERVAL:
-                breaks = 
RasterClassifier1D.classifyGivenInterval(rasterImageLayer, 0, classesCount);
-                classWidth = classesCount;
-                classesCount = breaks.length;
-                break;
-            case JENKS:
-                /* Sampling needed */
-                int top = 1000;
-                if(rasterData.length > top) {
-                    List<Double> sampled_l = new ArrayList<Double>();
-                    sampled_l.add((Double) minMaxValues.getMin());
-                    sampled_l.add((Double) minMaxValues.getMax());
-                    for(int v=0; v<rasterData.length; v=v+(rasterData.length / 
top)) {
-                        sampled_l.add(rasterData[v]);
-                    }
-                    double[] sampledRasterData = new double[sampled_l.size()];
-                    for(int v=0; v<sampled_l.size(); v++) {
-                        sampledRasterData[v] = sampled_l.get(v);
-                    }
-                    breaks = 
Classifier1D.classifyNaturalBreaks(sampledRasterData, classesCount);
-                    break;
-                }
-                
-                breaks = Classifier1D.classifyNaturalBreaks(rasterData, 
classesCount);
-                break;
-            case MAX_BREAKS:
-                breaks = Classifier1D.classifyMaxBreaks(rasterData, 
classesCount);
-                break;
-            case MEAN_STDEV:
-                breaks = 
Classifier1D.classifyMeanStandardDeviation(rasterData, classesCount);
-                break;
-            case QUANTILE:
-                breaks = Classifier1D.classifyEqualNumber(rasterData, 
classesCount);
-                break;
-        }
+       private void fixComponents() {
 
-        if(breaks == null) {
-            throw new 
Exception(java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.message.ErrorWhileClassifying"));
-        }
+               classMethods_m.put(ClassificationMethod.EQUAL_RANGE,
+                               
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                               
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.EqualInterval"));
+               classMethods_m.put(ClassificationMethod.GIVEN_INTERVAL,
+                               
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                               
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.GivenInterval"));
+               classMethods_m.put(ClassificationMethod.JENKS,
+                               
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                               
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.Jenks"));
+               classMethods_m.put(ClassificationMethod.MAX_BREAKS,
+                               
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                               
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.MaxBreaks"));
+               classMethods_m.put(ClassificationMethod.MEAN_STDEV,
+                               
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                               
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.MeanStDev"));
+               classMethods_m.put(ClassificationMethod.QUANTILE,
+                               
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                               
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.Quantiles"));
 
-        ColorMapEntry[] paletteColorMapEntries = ((GradientCanvas) 
jComboBox_Gradient.getSelectedItem()).getColorMapEntries();
-        
-        /* Calculate colors */
-        ColorUtils colorUtils = new ColorUtils();
-        ColorMapEntry[] colorMapEntries = new ColorMapEntry[classesCount];
-        int colorsCount = paletteColorMapEntries.length;
-        
-        double minVal = (Double) minMaxValues.getMin();
-        if(classMethod == ClassificationMethod.GIVEN_INTERVAL) {
-            minVal = Math.floor((Double) minMaxValues.getMin() / classWidth) * 
classWidth;
-        }
-        
-        colorMapEntries[0] = new ColorMapEntry(minVal, 
paletteColorMapEntries[0].getColor());
-        for(int c=1; c<classesCount; c++) {
-            
-            double cellRelDistance = (double) c / (double) (classesCount-1);
-            double colorRelDistance = cellRelDistance * (colorsCount - 1);
-            
-            Color startColor = paletteColorMapEntries[(int) 
Math.floor(colorRelDistance)].getColor();
-            Color endColor = paletteColorMapEntries[(int) 
Math.ceil(colorRelDistance)].getColor();
-            
-            Color color = colorUtils.interpolateColor(startColor, endColor, 
cellRelDistance);
-            colorMapEntries[c] = new ColorMapEntry(breaks[c-1], color);
-        }
-        
-        updateTable(colorMapEntries);
-        
-    }
-    
-    private void addRow() {
-        colorsTablePanel.addRows();
-    }
-    
-    private void removeRow() {
-        colorsTablePanel.removeRow();
-    }
-    
-    private void rampColors() throws Exception {
-        if(colorsTablePanel.getSelectedRowsCount() != 2) {
-            JOptionPane.showMessageDialog(
-                    this,
-                    
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.EqualInterval.SelectTowRowsToRamp"),
-                    RasterStylesExtension.extensionName,
-                    JOptionPane.WARNING_MESSAGE);
-        }
-        colorsTablePanel.rampColors();
-    }
-    
-    public static <T, E> T getKeyByValue(Map<T, E> map, E value) {
-        for (Entry<T, E> entry : map.entrySet()) {
-            if (value.equals(entry.getValue())) {
-                return entry.getKey();
-            }
-        }
-        return null;
-    }
-    
-    public void plugRasterSymbology(RasterSymbology rasterSymbology) {
-        
-        updateTable(rasterSymbology.getColorMapEntries());
-        
-    }
-    
-    private void updateTable(ColorMapEntry[] colorMapEntries) {
-        
-        /* Update table */
-        if(colorsTablePanel == null) {
-            colorsTablePanel = new ColorsTablePanel(parent, 
TableType.INTERVALS,
-                    colorMapEntries, rasterImageLayer.getNoDataValue(), false);
-            GridBagLayout layout = (GridBagLayout)getLayout();
-            GridBagConstraints gbc = layout.getConstraints(jPanel_Table);
-            remove(jPanel_Table);
-            add(colorsTablePanel, gbc, 5);
-            validate();
-        } else {
-            colorsTablePanel.updateTable(colorMapEntries);
-        }
-        
-    }
-    
-    public RasterSymbology getRasterStyler() throws Exception{
-        
-        RasterSymbology rasterSymbolizer = new 
RasterSymbology(RasterSymbology.TYPE_INTERVALS);
-        for (ColorMapEntry colorMapEntry : 
colorsTablePanel.getColorMapEntries()) {
-            rasterSymbolizer.addColorMapEntry(colorMapEntry.getUpperValue(), 
colorMapEntry.getColor());
-        }
-        
-        return rasterSymbolizer;
-    }
- 
-    private final java.util.ResourceBundle bundle = 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle");
-    private final Component parent;
-    private final Map<ClassificationMethod,String> classMethods_m = new 
EnumMap<ClassificationMethod,String>(ClassificationMethod.class);
-    private RasterImageLayer rasterImageLayer = null;
-    private ColorsTablePanel colorsTablePanel = null;
-    private final Range minMaxValues;
-    private GradientComboBox jComboBox_Gradient;
-    private boolean firstTimeShown = true;
-    
-    public enum ClassificationMethod {
-        
-            UNIQUE_VALUE, EQUAL_RANGE, GIVEN_INTERVAL, QUANTILE, MEAN_STDEV, 
MAX_BREAKS, JENKS;
-    
-    }
+               jComboBox_Method.removeAllItems();
+               
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.EQUAL_RANGE));
+               
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.GIVEN_INTERVAL));
+               
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.JENKS));
+               
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.MAX_BREAKS));
+               
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.MEAN_STDEV));
+               
jComboBox_Method.addItem(classMethods_m.get(ClassificationMethod.QUANTILE));
+               
jComboBox_Method.setSelectedItem(classMethods_m.get(ClassificationMethod.JENKS));
 
-    public GradientComboBox getjComboBox_Gradient() {
-        return jComboBox_Gradient;
-    }
+               // Listener
+               jComboBox_Method.addActionListener(new ActionListener() {
+                       @Override
+                       public void actionPerformed(ActionEvent e) {
+
+                               final ClassificationMethod classMethod = 
getKeyByValue(classMethods_m,
+                                               
jComboBox_Method.getSelectedItem().toString());
+                               if (classMethod == 
ClassificationMethod.GIVEN_INTERVAL) {
+                                       jLabel_Classes.setText(bundle
+                                                       
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.jLabel.classwidth"));
+                               } else {
+                                       jLabel_Classes.setText(
+                                                       
bundle.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.jLabel.Classes"));
+                               }
+
+                       }
+               });
+
+               // Color ramps
+               jComboBox_Gradient = 
GUIUtils.createStandardGradientComboBox(200, 18);
+
+               final java.awt.GridBagConstraints gridBagConstraints = new 
java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 2;
+               gridBagConstraints.gridy = 4;
+               gridBagConstraints.gridwidth = 1;
+               gridBagConstraints.anchor = 
java.awt.GridBagConstraints.LINE_START;
+               gridBagConstraints.weighty = 0.0;
+               gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
+               add(jComboBox_Gradient, gridBagConstraints);
+
+               GUIUtils.addGradientComboBoxToList(jComboBox_Gradient);
+
+       }
+
+       private void rampAll() throws Exception {
+
+               int classesCount = 5;
+               try {
+                       classesCount = 
Integer.parseInt(jTextField_Classes.getText());
+               } catch (final Exception ex) {
+                       JOptionPane.showMessageDialog(this,
+                                       
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                                       
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.numberOfClassesError"),
+                                       RasterStylesExtension.extensionName, 
JOptionPane.WARNING_MESSAGE);
+                       return;
+               }
+               double classWidth = 0;
+
+               double[] breaks = null;
+               final double[] rasterData = rasterImageLayer.getValues(0);// 
Utils.purgeNoData(rasterImageLayer.getActualRasterData(),rasterImageLayer);
+
+               final ClassificationMethod classMethod = 
getKeyByValue(classMethods_m,
+                               jComboBox_Method.getSelectedItem().toString());
+               switch (classMethod) {
+
+               case EQUAL_RANGE:
+                       breaks = Classifier1D.classifyEqualRange(rasterData, 
classesCount);
+                       break;
+               case GIVEN_INTERVAL:
+                       breaks = 
RasterClassifier1D.classifyGivenInterval(rasterImageLayer, 0, classesCount);
+                       classWidth = classesCount;
+                       classesCount = breaks.length;
+                       break;
+               case JENKS:
+                       /* Sampling needed */
+                       final int top = 1000;
+                       if (rasterData.length > top) {
+                               final List<Double> sampled_l = new 
ArrayList<>();
+                               sampled_l.add((Double) minMaxValues.getMin());
+                               sampled_l.add((Double) minMaxValues.getMax());
+                               for (int v = 0; v < rasterData.length; v = v + 
(rasterData.length / top)) {
+                                       sampled_l.add(rasterData[v]);
+                               }
+                               final double[] sampledRasterData = new 
double[sampled_l.size()];
+                               for (int v = 0; v < sampled_l.size(); v++) {
+                                       sampledRasterData[v] = sampled_l.get(v);
+                               }
+                               breaks = 
Classifier1D.classifyNaturalBreaks(sampledRasterData, classesCount);
+                               break;
+                       }
+
+                       breaks = Classifier1D.classifyNaturalBreaks(rasterData, 
classesCount);
+                       break;
+               case MAX_BREAKS:
+                       breaks = Classifier1D.classifyMaxBreaks(rasterData, 
classesCount);
+                       break;
+               case MEAN_STDEV:
+                       breaks = 
Classifier1D.classifyMeanStandardDeviation(rasterData, classesCount);
+                       break;
+               case QUANTILE:
+                       breaks = Classifier1D.classifyEqualNumber(rasterData, 
classesCount);
+                       break;
+               }
+
+               if (breaks == null) {
+                       throw new Exception(java.util.ResourceBundle
+                                       
.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                       
.getString("org.openjump.core.rasterimage.styler.ui.IntervalPanel.message.ErrorWhileClassifying"));
+               }
+
+               final ColorMapEntry[] paletteColorMapEntries = 
((GradientCanvas) jComboBox_Gradient.getSelectedItem())
+                               .getColorMapEntries();
+
+               /* Calculate colors */
+               final ColorUtils colorUtils = new ColorUtils();
+               final ColorMapEntry[] colorMapEntries = new 
ColorMapEntry[classesCount];
+               final int colorsCount = paletteColorMapEntries.length;
+
+               double minVal = (Double) minMaxValues.getMin();
+               if (classMethod == ClassificationMethod.GIVEN_INTERVAL) {
+                       minVal = Math.floor((Double) minMaxValues.getMin() / 
classWidth) * classWidth;
+               }
+
+               colorMapEntries[0] = new ColorMapEntry(minVal, 
paletteColorMapEntries[0].getColor());
+               for (int c = 1; c < classesCount; c++) {
+
+                       final double cellRelDistance = (double) c / (double) 
(classesCount - 1);
+                       final double colorRelDistance = cellRelDistance * 
(colorsCount - 1);
+
+                       final Color startColor = paletteColorMapEntries[(int) 
Math.floor(colorRelDistance)].getColor();
+                       final Color endColor = paletteColorMapEntries[(int) 
Math.ceil(colorRelDistance)].getColor();
+
+                       final Color color = 
colorUtils.interpolateColor(startColor, endColor, cellRelDistance);
+                       colorMapEntries[c] = new ColorMapEntry(breaks[c - 1], 
color);
+               }
+
+               updateTable(colorMapEntries);
+
+       }
+
+       private void addRow() {
+               colorsTablePanel.addRows();
+       }
+
+       private void removeRow() {
+               colorsTablePanel.removeRow();
+       }
+
+       private void rampColors() throws Exception {
+               if (colorsTablePanel.getSelectedRowsCount() != 2) {
+                       JOptionPane.showMessageDialog(this, 
java.util.ResourceBundle
+                                       
.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle").getString(
+                                                       
"org.openjump.core.rasterimage.styler.ui.IntervalPanel.classMethods.EqualInterval.SelectTowRowsToRamp"),
+                                       RasterStylesExtension.extensionName, 
JOptionPane.WARNING_MESSAGE);
+               }
+               colorsTablePanel.rampColors();
+       }
+
+       public static <T, E> T getKeyByValue(Map<T, E> map, E value) {
+               for (final Entry<T, E> entry : map.entrySet()) {
+                       if (value.equals(entry.getValue())) {
+                               return entry.getKey();
+                       }
+               }
+               return null;
+       }
+
+       public void plugRasterSymbology(RasterSymbology rasterSymbology) {
+
+               updateTable(rasterSymbology.getColorMapEntries());
+
+       }
+
+       private void updateTable(ColorMapEntry[] colorMapEntries) {
+
+               /* Update table */
+               if (colorsTablePanel == null) {
+                       colorsTablePanel = new ColorsTablePanel(parent, 
TableType.INTERVALS, colorMapEntries,
+                                       rasterImageLayer.getNoDataValue(), 
false);
+                       final GridBagLayout layout = (GridBagLayout) 
getLayout();
+                       final GridBagConstraints gbc = 
layout.getConstraints(jPanel_Table);
+                       remove(jPanel_Table);
+                       add(colorsTablePanel, gbc, 5);
+                       validate();
+               } else {
+                       colorsTablePanel.updateTable(colorMapEntries);
+               }
+
+       }
+
+       public RasterSymbology getRasterStyler() throws Exception {
+
+               final RasterSymbology rasterSymbolizer = new 
RasterSymbology(RasterSymbology.TYPE_INTERVALS);
+               for (final ColorMapEntry colorMapEntry : 
colorsTablePanel.getColorMapEntries()) {
+                       
rasterSymbolizer.addColorMapEntry(colorMapEntry.getUpperValue(), 
colorMapEntry.getColor());
+               }
+
+               return rasterSymbolizer;
+       }
+
+       private final java.util.ResourceBundle bundle = java.util.ResourceBundle
+                       
.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle");
+       private final Component parent;
+       private final Map<ClassificationMethod, String> classMethods_m = new 
EnumMap<>(
+                       ClassificationMethod.class);
+       private RasterImageLayer rasterImageLayer = null;
+       private ColorsTablePanel colorsTablePanel = null;
+       private final Range minMaxValues;
+       private GradientComboBox jComboBox_Gradient;
+       private boolean firstTimeShown = true;
+
+       public enum ClassificationMethod {
+
+               UNIQUE_VALUE, EQUAL_RANGE, GIVEN_INTERVAL, QUANTILE, 
MEAN_STDEV, MAX_BREAKS, JENKS;
+
+       }
+
+       public GradientComboBox getjComboBox_Gradient() {
+               return jComboBox_Gradient;
+       }
 }
-

Modified: 
core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java
===================================================================
--- 
core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java  
    2021-12-08 05:39:14 UTC (rev 6681)
+++ 
core/trunk/src/org/openjump/core/rasterimage/styler/ui/RasterStylesDialog.java  
    2021-12-08 05:43:53 UTC (rev 6682)
@@ -1,6 +1,9 @@
 package org.openjump.core.rasterimage.styler.ui;
 
-import java.awt.*;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Font;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.geom.NoninvertibleTransformException;
@@ -20,7 +23,6 @@
 import org.openjump.core.rasterimage.Stats;
 import org.openjump.core.rasterimage.styler.RasterStylesExtension;
 import org.openjump.core.rasterimage.styler.SLDHandler;
-import org.openjump.core.rasterimage.styler.Utils;
 import org.openjump.core.ui.io.file.FileNameExtensionFilter;
 
 import com.vividsolutions.jump.util.Range;
@@ -27,8 +29,8 @@
 import com.vividsolutions.jump.util.StringUtil;
 import com.vividsolutions.jump.workbench.Logger;
 import com.vividsolutions.jump.workbench.WorkbenchContext;
+import com.vividsolutions.jump.workbench.model.LayerEventType;
 import com.vividsolutions.jump.workbench.model.Layerable;
-import com.vividsolutions.jump.workbench.model.LayerEventType;
 import com.vividsolutions.jump.workbench.ui.ErrorDialog;
 import 
com.vividsolutions.jump.workbench.ui.renderer.style.ColorThemingStylePanel;
 import com.vividsolutions.jump.workbench.ui.style.StylePanel;
@@ -41,584 +43,609 @@
  */
 public class RasterStylesDialog extends javax.swing.JDialog {
 
-    /**
-     * Creates new form SymbologyDialog
-     * @param parent parent frame
-     * @param modal true if Dialog is modal
-     * @param context Workbench Context
-     * @param rasterImageLayer one of the selected RasterImageLayer
-     * @param band raster band to symbolize
-     */
-    public RasterStylesDialog(java.awt.Frame parent, boolean modal, 
-            WorkbenchContext context, RasterImageLayer rasterImageLayer, int 
band) throws Exception {
-        
-        super(parent, modal);
-        this.context = context;
-        this.rasterImageLayer = rasterImageLayer;
-        this.band = band;
-        
-        try {
-          initComponents();
-          fixComponents();
-        } catch (Exception e) {
-          // survive exception during initialization
-          Logger.error(e);
-          context.getErrorHandler().handleThrowable(e);
-        }
-    }
+       /**
+        * Creates new form SymbologyDialog
+        *
+        * @param parent           parent frame
+        * @param modal            true if Dialog is modal
+        * @param context          Workbench Context
+        * @param rasterImageLayer one of the selected RasterImageLayer
+        * @param band             raster band to symbolize
+        */
+       public RasterStylesDialog(java.awt.Frame parent, boolean modal, 
WorkbenchContext context,
+                       RasterImageLayer rasterImageLayer, int band) throws 
Exception {
 
+               super(parent, modal);
+               this.context = context;
+               this.rasterImageLayer = rasterImageLayer;
+               this.band = band;
 
-    /**
-     * This method is called from within the constructor to initialize the 
form.
-     * WARNING: Do NOT modify this code. The content of this method is always
-     * regenerated by the Form Editor.
-     */
-    //@SuppressWarnings("unchecked")
-    private void initComponents() {
-        java.awt.GridBagConstraints gridBagConstraints;
+               try {
+                       initComponents();
+                       fixComponents();
+               } catch (final Exception e) {
+                       // survive exception during initialization
+                       Logger.error(e);
+                       context.getErrorHandler().handleThrowable(e);
+               }
+       }
 
-        jTabbedPane_Type = new javax.swing.JTabbedPane();
-        jPanel_OtherParams = new javax.swing.JPanel();
-        jButton_NoDataValueColor = new javax.swing.JButton();
-        jLabel_Transparency = new javax.swing.JLabel();
-        jLabel_Transp_0 = new javax.swing.JLabel();
-        jSlider_Transparency = new javax.swing.JSlider();
-        jLabel_Transp_100 = new javax.swing.JLabel();
-        jCheckBox_NoDataValue = new javax.swing.JCheckBox();
-        jTextField_TranspValue = new javax.swing.JTextField();
-        jButton_Load = new javax.swing.JButton();
-        jButton_Save = new javax.swing.JButton();
-        jButton_Cancel = new javax.swing.JButton();
-        jButton_Restore = new javax.swing.JButton();
-        jButton_Apply = new javax.swing.JButton();
-        jButton_OK = new javax.swing.JButton();
+       /**
+        * This method is called from within the constructor to initialize the 
form.
+        * WARNING: Do NOT modify this code. The content of this method is 
always
+        * regenerated by the Form Editor.
+        */
+       // @SuppressWarnings("unchecked")
+       private void initComponents() {
+               java.awt.GridBagConstraints gridBagConstraints;
 
-        setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
-        setMinimumSize(new java.awt.Dimension(420, 450));
-        getContentPane().setLayout(new java.awt.GridBagLayout());
+               jTabbedPane_Type = new javax.swing.JTabbedPane();
+               jPanel_OtherParams = new javax.swing.JPanel();
+               jButton_NoDataValueColor = new javax.swing.JButton();
+               jLabel_Transparency = new javax.swing.JLabel();
+               jLabel_Transp_0 = new javax.swing.JLabel();
+               jSlider_Transparency = new javax.swing.JSlider();
+               jLabel_Transp_100 = new javax.swing.JLabel();
+               jCheckBox_NoDataValue = new javax.swing.JCheckBox();
+               jTextField_TranspValue = new javax.swing.JTextField();
+               jButton_Load = new javax.swing.JButton();
+               jButton_Save = new javax.swing.JButton();
+               jButton_Cancel = new javax.swing.JButton();
+               jButton_Restore = new javax.swing.JButton();
+               jButton_Apply = new javax.swing.JButton();
+               jButton_OK = new javax.swing.JButton();
 
-        jTabbedPane_Type.setAlignmentX(1.0F);
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridwidth = 6;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
-        gridBagConstraints.weighty = 1.0;
-        getContentPane().add(jTabbedPane_Type, gridBagConstraints);
+               
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
+               setMinimumSize(new java.awt.Dimension(420, 450));
+               getContentPane().setLayout(new java.awt.GridBagLayout());
 
-        
jPanel_OtherParams.setBorder(javax.swing.BorderFactory.createEtchedBorder());
-        jPanel_OtherParams.setMinimumSize(new java.awt.Dimension(400, 100));
-        jPanel_OtherParams.setPreferredSize(new java.awt.Dimension(400, 100));
-        jPanel_OtherParams.setLayout(new java.awt.GridBagLayout());
+               jTabbedPane_Type.setAlignmentX(1.0F);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridwidth = 6;
+               gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
+               gridBagConstraints.weighty = 1.0;
+               getContentPane().add(jTabbedPane_Type, gridBagConstraints);
 
-        jButton_NoDataValueColor.setBackground(new java.awt.Color(204, 204, 
204));
-        jButton_NoDataValueColor.setForeground(new java.awt.Color(204, 204, 
204));
-        java.util.ResourceBundle bundle = 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle");
 // NOI18N
-        
jButton_NoDataValueColor.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_NoDataValueColor.text"));
 // NOI18N
-        
jButton_NoDataValueColor.setBorder(javax.swing.BorderFactory.createEtchedBorder());
-        jButton_NoDataValueColor.setContentAreaFilled(false);
-        jButton_NoDataValueColor.setDoubleBuffered(true);
-        jButton_NoDataValueColor.setMaximumSize(new java.awt.Dimension(40, 
25));
-        jButton_NoDataValueColor.setMinimumSize(new java.awt.Dimension(40, 
25));
-        jButton_NoDataValueColor.setOpaque(true);
-        jButton_NoDataValueColor.setPreferredSize(new java.awt.Dimension(40, 
25));
-        
jButton_NoDataValueColor.addActionListener(this::jButton_NoDataValueColorActionPerformed);
+               
jPanel_OtherParams.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+               jPanel_OtherParams.setMinimumSize(new java.awt.Dimension(400, 
100));
+               jPanel_OtherParams.setPreferredSize(new java.awt.Dimension(400, 
100));
+               jPanel_OtherParams.setLayout(new java.awt.GridBagLayout());
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 1;
-        gridBagConstraints.gridy = 0;
-        gridBagConstraints.gridwidth = 2;
-        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
-        gridBagConstraints.weightx = 1.0;
-        gridBagConstraints.insets = new java.awt.Insets(6, 6, 6, 6);
-        jPanel_OtherParams.add(jButton_NoDataValueColor, gridBagConstraints);
+               jButton_NoDataValueColor.setBackground(new java.awt.Color(204, 
204, 204));
+               jButton_NoDataValueColor.setForeground(new java.awt.Color(204, 
204, 204));
+               final java.util.ResourceBundle bundle = java.util.ResourceBundle
+                               
.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle"); // NOI18N
+               jButton_NoDataValueColor.setText(bundle
+                               
.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_NoDataValueColor.text"));
 // NOI18N
+               
jButton_NoDataValueColor.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+               jButton_NoDataValueColor.setContentAreaFilled(false);
+               jButton_NoDataValueColor.setDoubleBuffered(true);
+               jButton_NoDataValueColor.setMaximumSize(new 
java.awt.Dimension(40, 25));
+               jButton_NoDataValueColor.setMinimumSize(new 
java.awt.Dimension(40, 25));
+               jButton_NoDataValueColor.setOpaque(true);
+               jButton_NoDataValueColor.setPreferredSize(new 
java.awt.Dimension(40, 25));
+               
jButton_NoDataValueColor.addActionListener(this::jButton_NoDataValueColorActionPerformed);
 
-        
jLabel_Transparency.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jLabel_Transparency.text"));
 // NOI18N
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 1;
-        gridBagConstraints.weightx = 1.0;
-        gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 5);
-        jPanel_OtherParams.add(jLabel_Transparency, gridBagConstraints);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 1;
+               gridBagConstraints.gridy = 0;
+               gridBagConstraints.gridwidth = 2;
+               gridBagConstraints.anchor = 
java.awt.GridBagConstraints.LINE_START;
+               gridBagConstraints.weightx = 1.0;
+               gridBagConstraints.insets = new java.awt.Insets(6, 6, 6, 6);
+               jPanel_OtherParams.add(jButton_NoDataValueColor, 
gridBagConstraints);
 
-        jLabel_Transp_0.setBackground(new java.awt.Color(0, 0, 0));
-        
jLabel_Transp_0.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jLabel_Transp_0.text"));
 // NOI18N
-        
jLabel_Transp_0.setBorder(javax.swing.BorderFactory.createEtchedBorder());
-        jLabel_Transp_0.setMaximumSize(new java.awt.Dimension(10, 10));
-        jLabel_Transp_0.setMinimumSize(new java.awt.Dimension(10, 10));
-        jLabel_Transp_0.setOpaque(true);
-        jLabel_Transp_0.setPreferredSize(new java.awt.Dimension(10, 10));
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 1;
-        gridBagConstraints.gridy = 1;
-        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_END;
-        gridBagConstraints.weightx = 1.0;
-        gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5);
-        jPanel_OtherParams.add(jLabel_Transp_0, gridBagConstraints);
+               jLabel_Transparency.setText(bundle
+                               
.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jLabel_Transparency.text"));
 // NOI18N
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 1;
+               gridBagConstraints.weightx = 1.0;
+               gridBagConstraints.insets = new java.awt.Insets(0, 0, 0, 5);
+               jPanel_OtherParams.add(jLabel_Transparency, gridBagConstraints);
 
-        jSlider_Transparency.setFont(new java.awt.Font("Tahoma", Font.PLAIN, 
5)); // NOI18N
-        jSlider_Transparency.setForeground(new java.awt.Color(102, 102, 102));
-        jSlider_Transparency.setMajorTickSpacing(20);
-        jSlider_Transparency.setMinorTickSpacing(5);
-        jSlider_Transparency.setPaintTicks(true);
-        jSlider_Transparency.setSnapToTicks(true);
-        jSlider_Transparency.setValue(0);
-        jSlider_Transparency.setMinimumSize(new java.awt.Dimension(150, 31));
-        jSlider_Transparency.setPreferredSize(new java.awt.Dimension(150, 31));
-        
jSlider_Transparency.addChangeListener(this::jSlider_TransparencyStateChanged);
+               jLabel_Transp_0.setBackground(new java.awt.Color(0, 0, 0));
+               jLabel_Transp_0.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jLabel_Transp_0.text"));
 // NOI18N
+               
jLabel_Transp_0.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+               jLabel_Transp_0.setMaximumSize(new java.awt.Dimension(10, 10));
+               jLabel_Transp_0.setMinimumSize(new java.awt.Dimension(10, 10));
+               jLabel_Transp_0.setOpaque(true);
+               jLabel_Transp_0.setPreferredSize(new java.awt.Dimension(10, 
10));
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 1;
+               gridBagConstraints.gridy = 1;
+               gridBagConstraints.anchor = 
java.awt.GridBagConstraints.LINE_END;
+               gridBagConstraints.weightx = 1.0;
+               gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 5);
+               jPanel_OtherParams.add(jLabel_Transp_0, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 2;
-        gridBagConstraints.gridy = 1;
-        gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
-        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
-        gridBagConstraints.weightx = 0.5;
-        gridBagConstraints.insets = new java.awt.Insets(9, 0, 0, 0);
-        jPanel_OtherParams.add(jSlider_Transparency, gridBagConstraints);
+               jSlider_Transparency.setFont(new java.awt.Font("Tahoma", 
Font.PLAIN, 5)); // NOI18N
+               jSlider_Transparency.setForeground(new java.awt.Color(102, 102, 
102));
+               jSlider_Transparency.setMajorTickSpacing(20);
+               jSlider_Transparency.setMinorTickSpacing(5);
+               jSlider_Transparency.setPaintTicks(true);
+               jSlider_Transparency.setSnapToTicks(true);
+               jSlider_Transparency.setValue(0);
+               jSlider_Transparency.setMinimumSize(new java.awt.Dimension(150, 
31));
+               jSlider_Transparency.setPreferredSize(new 
java.awt.Dimension(150, 31));
+               
jSlider_Transparency.addChangeListener(this::jSlider_TransparencyStateChanged);
 
-        
jLabel_Transp_100.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jLabel_Transp_100.text"));
 // NOI18N
-        
jLabel_Transp_100.setBorder(javax.swing.BorderFactory.createEtchedBorder());
-        jLabel_Transp_100.setMaximumSize(new java.awt.Dimension(10, 10));
-        jLabel_Transp_100.setMinimumSize(new java.awt.Dimension(10, 10));
-        jLabel_Transp_100.setPreferredSize(new java.awt.Dimension(10, 10));
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 3;
-        gridBagConstraints.gridy = 1;
-        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
-        gridBagConstraints.weightx = 1.0;
-        gridBagConstraints.insets = new java.awt.Insets(0, 2, 0, 2);
-        jPanel_OtherParams.add(jLabel_Transp_100, gridBagConstraints);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 2;
+               gridBagConstraints.gridy = 1;
+               gridBagConstraints.fill = 
java.awt.GridBagConstraints.HORIZONTAL;
+               gridBagConstraints.anchor = 
java.awt.GridBagConstraints.LINE_START;
+               gridBagConstraints.weightx = 0.5;
+               gridBagConstraints.insets = new java.awt.Insets(9, 0, 0, 0);
+               jPanel_OtherParams.add(jSlider_Transparency, 
gridBagConstraints);
 
-        
jCheckBox_NoDataValue.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jCheckBox_NoDataValue.text"));
 // NOI18N
-        jCheckBox_NoDataValue.setMaximumSize(new java.awt.Dimension(70, 23));
-        jCheckBox_NoDataValue.setMinimumSize(new java.awt.Dimension(70, 23));
-        
jCheckBox_NoDataValue.addActionListener(this::jCheckBox_NoDataValueActionPerformed);
+               jLabel_Transp_100.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jLabel_Transp_100.text"));
 // NOI18N
+               
jLabel_Transp_100.setBorder(javax.swing.BorderFactory.createEtchedBorder());
+               jLabel_Transp_100.setMaximumSize(new java.awt.Dimension(10, 
10));
+               jLabel_Transp_100.setMinimumSize(new java.awt.Dimension(10, 
10));
+               jLabel_Transp_100.setPreferredSize(new java.awt.Dimension(10, 
10));
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 3;
+               gridBagConstraints.gridy = 1;
+               gridBagConstraints.anchor = 
java.awt.GridBagConstraints.LINE_START;
+               gridBagConstraints.weightx = 1.0;
+               gridBagConstraints.insets = new java.awt.Insets(0, 2, 0, 2);
+               jPanel_OtherParams.add(jLabel_Transp_100, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 0;
-        jPanel_OtherParams.add(jCheckBox_NoDataValue, gridBagConstraints);
+               jCheckBox_NoDataValue.setText(bundle
+                               
.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jCheckBox_NoDataValue.text"));
 // NOI18N
+               jCheckBox_NoDataValue.setMaximumSize(new java.awt.Dimension(70, 
23));
+               jCheckBox_NoDataValue.setMinimumSize(new java.awt.Dimension(70, 
23));
+               
jCheckBox_NoDataValue.addActionListener(this::jCheckBox_NoDataValueActionPerformed);
 
-        
jTextField_TranspValue.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jTextField_TranspValue.text"));
 // NOI18N
-        jTextField_TranspValue.setMinimumSize(new java.awt.Dimension(40, 20));
-        jTextField_TranspValue.setPreferredSize(new java.awt.Dimension(40, 
20));
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 4;
-        gridBagConstraints.gridy = 1;
-        gridBagConstraints.weightx = 1.0;
-        gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 20);
-        jPanel_OtherParams.add(jTextField_TranspValue, gridBagConstraints);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 0;
+               jPanel_OtherParams.add(jCheckBox_NoDataValue, 
gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 1;
-        gridBagConstraints.gridwidth = 6;
-        getContentPane().add(jPanel_OtherParams, gridBagConstraints);
+               jTextField_TranspValue.setText(bundle
+                               
.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jTextField_TranspValue.text"));
 // NOI18N
+               jTextField_TranspValue.setMinimumSize(new 
java.awt.Dimension(40, 20));
+               jTextField_TranspValue.setPreferredSize(new 
java.awt.Dimension(40, 20));
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 4;
+               gridBagConstraints.gridy = 1;
+               gridBagConstraints.weightx = 1.0;
+               gridBagConstraints.insets = new java.awt.Insets(0, 5, 0, 20);
+               jPanel_OtherParams.add(jTextField_TranspValue, 
gridBagConstraints);
 
-        
jButton_Load.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Load.text"));
 // NOI18N
-        jButton_Load.addActionListener(this::jButton_LoadActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 1;
+               gridBagConstraints.gridwidth = 6;
+               getContentPane().add(jPanel_OtherParams, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 2;
-        gridBagConstraints.gridy = 2;
-        getContentPane().add(jButton_Load, gridBagConstraints);
+               jButton_Load.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Load.text"));
 // NOI18N
+               
jButton_Load.addActionListener(this::jButton_LoadActionPerformed);
 
-        
jButton_Save.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Save.text"));
 // NOI18N
-        jButton_Save.addActionListener(this::jButton_SaveActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 2;
+               gridBagConstraints.gridy = 2;
+               getContentPane().add(jButton_Load, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 1;
-        gridBagConstraints.gridy = 2;
-        getContentPane().add(jButton_Save, gridBagConstraints);
+               jButton_Save.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Save.text"));
 // NOI18N
+               
jButton_Save.addActionListener(this::jButton_SaveActionPerformed);
 
-        
jButton_Cancel.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Cancel.text"));
 // NOI18N
-        jButton_Cancel.addActionListener(this::jButton_CancelActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 1;
+               gridBagConstraints.gridy = 2;
+               getContentPane().add(jButton_Save, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 0;
-        gridBagConstraints.gridy = 2;
-        gridBagConstraints.anchor = java.awt.GridBagConstraints.LINE_START;
-        gridBagConstraints.weightx = 1.0;
-        gridBagConstraints.insets = new java.awt.Insets(5, 20, 5, 10);
-        getContentPane().add(jButton_Cancel, gridBagConstraints);
+               jButton_Cancel.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Cancel.text"));
 // NOI18N
+               
jButton_Cancel.addActionListener(this::jButton_CancelActionPerformed);
 
-        
jButton_Restore.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Restore.text"));
 // NOI18N
-        
jButton_Restore.addActionListener(this::jButton_RestoreActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 0;
+               gridBagConstraints.gridy = 2;
+               gridBagConstraints.anchor = 
java.awt.GridBagConstraints.LINE_START;
+               gridBagConstraints.weightx = 1.0;
+               gridBagConstraints.insets = new java.awt.Insets(5, 20, 5, 10);
+               getContentPane().add(jButton_Cancel, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 3;
-        gridBagConstraints.gridy = 2;
-        gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
-        getContentPane().add(jButton_Restore, gridBagConstraints);
+               jButton_Restore.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Restore.text"));
 // NOI18N
+               
jButton_Restore.addActionListener(this::jButton_RestoreActionPerformed);
 
-        
jButton_Apply.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Apply.text"));
 // NOI18N
-        jButton_Apply.addActionListener(this::jButton_ApplyActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 3;
+               gridBagConstraints.gridy = 2;
+               gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
+               getContentPane().add(jButton_Restore, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 4;
-        gridBagConstraints.gridy = 2;
-        gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
-        getContentPane().add(jButton_Apply, gridBagConstraints);
+               jButton_Apply.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_Apply.text"));
 // NOI18N
+               
jButton_Apply.addActionListener(this::jButton_ApplyActionPerformed);
 
-        
jButton_OK.setText(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_OK.text"));
 // NOI18N
-        jButton_OK.addActionListener(this::jButton_OKActionPerformed);
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 4;
+               gridBagConstraints.gridy = 2;
+               gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
+               getContentPane().add(jButton_Apply, gridBagConstraints);
 
-        gridBagConstraints = new java.awt.GridBagConstraints();
-        gridBagConstraints.gridx = 5;
-        gridBagConstraints.gridy = 2;
-        gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
-        getContentPane().add(jButton_OK, gridBagConstraints);
+               jButton_OK.setText(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.jButton_OK.text"));
 // NOI18N
+               jButton_OK.addActionListener(this::jButton_OKActionPerformed);
 
-        pack();
-    }
+               gridBagConstraints = new java.awt.GridBagConstraints();
+               gridBagConstraints.gridx = 5;
+               gridBagConstraints.gridy = 2;
+               gridBagConstraints.insets = new java.awt.Insets(5, 5, 5, 5);
+               getContentPane().add(jButton_OK, gridBagConstraints);
 
-    private void 
jButton_NoDataValueColorActionPerformed(java.awt.event.ActionEvent evt) {
+               pack();
+       }
 
-        if(jCheckBox_NoDataValue.isSelected()){            
-            noDataColor =  JColorChooser.showDialog(
-                    this,
-                    
ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
-                            
.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.chooseNoDataColor"),
-                    jButton_NoDataValueColor.getBackground()
-            );
-            
-            if(noDataColor!=null){
-                jButton_NoDataValueColor.setBackground(noDataColor);
-            }
-        }             
-        
-    }
+       private void 
jButton_NoDataValueColorActionPerformed(java.awt.event.ActionEvent evt) {
 
-    private void 
jCheckBox_NoDataValueActionPerformed(java.awt.event.ActionEvent evt) {
-    
-        
jButton_NoDataValueColor.setEnabled(jCheckBox_NoDataValue.isSelected());        
-        
-    }
+               if (jCheckBox_NoDataValue.isSelected()) {
+                       noDataColor = JColorChooser.showDialog(this,
+                                       
ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle")
+                                                       
.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.chooseNoDataColor"),
+                                       
jButton_NoDataValueColor.getBackground());
 
-    private void jButton_LoadActionPerformed(java.awt.event.ActionEvent evt) {
-        
-        loadSld();
-        
-    }
+                       if (noDataColor != null) {
+                               
jButton_NoDataValueColor.setBackground(noDataColor);
+                       }
+               }
 
-    private void jButton_SaveActionPerformed(java.awt.event.ActionEvent evt) {
-        
-        saveSld();
-        
-    }
+       }
 
-    private void jButton_CancelActionPerformed(java.awt.event.ActionEvent evt) 
{
-        
-        closeDialog();
-        
-    }
+       private void 
jCheckBox_NoDataValueActionPerformed(java.awt.event.ActionEvent evt) {
 
-    private void jButton_ApplyActionPerformed(java.awt.event.ActionEvent evt) {
-  
-        //Update raster image
-        try {         
-            updateRasterImageLayer();
-        } catch (Exception ex) {
-            Logger.error(ex);
-        }
-        
-    }
+               
jButton_NoDataValueColor.setEnabled(jCheckBox_NoDataValue.isSelected());
 
-    private void 
jSlider_TransparencyStateChanged(javax.swing.event.ChangeEvent evt) {
+       }
 
-        
jTextField_TranspValue.setText(Integer.toString(jSlider_Transparency.getValue()));
-        
-    }
+       private void jButton_LoadActionPerformed(java.awt.event.ActionEvent 
evt) {
 
-    private void jButton_RestoreActionPerformed(java.awt.event.ActionEvent 
evt) {
-        
-        try {
-            Collection<Layerable> layerables = 
context.getLayerableNamePanel().getSelectedLayerables();
-            for (Layerable lyr : layerables) {
-                jButton_NoDataValueColor.setBackground(new java.awt.Color(204, 
204, 204));
-                jButton_NoDataValueColor.setForeground(new java.awt.Color(204, 
204, 204));
-                jSlider_Transparency.setValue(0);
-                jTextField_TranspValue.setText("0");
-                jCheckBox_NoDataValue.setSelected(false);
-                stretchedPanel.reset();
-                intervalPanel.reset();
-                singleValuesPanel.reset();
-                
finalRasterSymbolizer.setColorMapType(RasterSymbology.TYPE_RAMP);
-                if (lyr instanceof RasterImageLayer) 
restoreToOriginal((RasterImageLayer)lyr);
-            }
-        } catch (Exception ex) {
-            Logger.error(ex);
-        }
-            
-    }
+               loadSld();
 
-    private void jButton_OKActionPerformed(java.awt.event.ActionEvent evt) {
-        
-        //Update raster image and close
-        try {         
-            updateRasterImageLayer();
-            closeDialog();
-        } catch (Exception ex) {
-            Logger.error( ex);
-        }
-        
-    }
-    
-    private void fixComponents() throws Exception{
-        
-        this.setTitle(RasterStylesExtension.extensionName);
-        
-        /* Transparency text field */
-        jTextField_TranspValue.setInputVerifier(verifier);
-        jTextField_TranspValue.addActionListener(verifier);
-        
jTextField_TranspValue.setText(Integer.toString(jSlider_Transparency.getValue()));
               
-                
-        Stats stats = rasterImageLayer.getMetadata().getStats();
-        Range minMaxValues = new Range(stats.getMin(band), true, 
stats.getMax(band), true);
+       }
 
-        stretchedPanel = new StretchedPanel(minMaxValues);
-        intervalPanel = new IntervalPanel(
-                this,
-                rasterImageLayer,
-                minMaxValues);
-        singleValuesPanel = new SingleValuesPanel(this, 
Utils.purgeNoData(rasterImageLayer.getActualRasterData(), rasterImageLayer), 
rasterImageLayer);
-        
-        if (stats.getMin(band) == stats.getMax(band)) {
-            final DummyPanel pan = new DummyPanel("No stretched classification 
available, this raster has only one value: " + stats.getMax(band));
-            
jTabbedPane_Type.addTab(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabStretched"),
 pan);  
-            
jTabbedPane_Type.addTab(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabIntervals"),
 intervalPanel);
-           for (final Component c2 : intervalPanel.getComponents()) {
-              c2.setEnabled(false);
-           }
-        } else {
-            
jTabbedPane_Type.addTab(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabStretched"),
 stretchedPanel);
-            
jTabbedPane_Type.addTab(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabIntervals"),
 intervalPanel);
-        }
-        
jTabbedPane_Type.addTab(bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabSingleValues"),
 singleValuesPanel);
-        pack();
-        
-        /* Startup symbology */
-        if(rasterImageLayer.getSymbology() != null) {
-            
-            this.finalRasterSymbolizer = rasterImageLayer.getSymbology();
-            updateGUI();
-            
-        }
-        
-        //add RasterSymbolizer Object in BlackBoard, the key is the name of 
raster plus suffixBBoardKey var.
-        String bboardKey = 
GUIUtils.getBBKey(String.valueOf(rasterImageLayer.getUUID()));
-        context.getBlackboard().put(bboardKey, this);
-        
-    }
-    
-    public void updateRasterImageLayer() throws Exception {
-        
-        if(jTabbedPane_Type.getSelectedComponent() instanceof StretchedPanel) {
-            finalRasterSymbolizer = stretchedPanel.getRasterStyler();
-        } else if(jTabbedPane_Type.getSelectedComponent() instanceof 
IntervalPanel) {
-            finalRasterSymbolizer = intervalPanel.getRasterStyler();
-        } else if(jTabbedPane_Type.getSelectedComponent() instanceof 
SingleValuesPanel) {
-            finalRasterSymbolizer = singleValuesPanel.getRasterStyler();
-            
-        }
-        
-        
finalRasterSymbolizer.setTransparency(GUIUtils.getAlpha_DecimalRange(Integer.parseInt(jTextField_TranspValue.getText())));
-        
-        if(jCheckBox_NoDataValue.isSelected()){
-            
finalRasterSymbolizer.addColorMapEntry(rasterImageLayer.getNoDataValue(), 
jButton_NoDataValueColor.getBackground());
-        } else {
-            
finalRasterSymbolizer.addColorMapEntry(rasterImageLayer.getNoDataValue(), null);
-        }
+       private void jButton_SaveActionPerformed(java.awt.event.ActionEvent 
evt) {
 
-        Collection<Layerable> layerables = 
context.getLayerableNamePanel().getSelectedLayerables();
-        for (Layerable lyr : layerables) {
-            if (lyr instanceof RasterImageLayer) apply((RasterImageLayer)lyr);
-        }
+               saveSld();
 
-    }
+       }
 
-    public void apply(RasterImageLayer rasterImageLayer) throws Exception {
-        rasterImageLayer.setSymbology(finalRasterSymbolizer);
-        context.getLayerManager().fireLayerChanged(rasterImageLayer, 
LayerEventType.APPEARANCE_CHANGED);
-    }
+       private void jButton_CancelActionPerformed(java.awt.event.ActionEvent 
evt) {
 
-    private void restoreToOriginal(RasterImageLayer rasterImageLayer) throws 
NoninvertibleTransformException {
-        rasterImageLayer.setSymbology(null);
-    }
-    
-    private void saveSld() {
-        
-        if(finalRasterSymbolizer == null) {
-            return;
-        }
-        
-        JFileChooser chooser = new 
JFileChooser(PirolPlugInSettings.configDirectory());
-        String extension = "sld";
-        FileNameExtensionFilter filter = new FileNameExtensionFilter(
-                
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.fileChooser.sld"),
 extension);
-        chooser.setFileFilter(filter);
-        int returnVal = chooser.showSaveDialog(this);
-        
-        if (returnVal == JFileChooser.APPROVE_OPTION) {
-            
-            try {
-                File sldFile = chooser.getSelectedFile();
-                if(!sldFile.getAbsolutePath().endsWith(extension)){
-                    sldFile = new File(sldFile + "." + extension);
-                }
-                
-                SLDHandler.write(finalRasterSymbolizer, null, sldFile);
-            } catch (Exception ex) {
-                ErrorDialog.show(this, StringUtil.toFriendlyName(
-                        ex.getClass().getName()),
-                        ex.toString(),
-                        StringUtil.stackTrace(ex));
-            }
-        }
-        
-    }
-    
-    private void loadSld() {
-                
-        JFileChooser chooser = new 
JFileChooser(PirolPlugInSettings.configDirectory());
-        FileNameExtensionFilter filter = new FileNameExtensionFilter(
-                
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.fileChooser.sld"),
 "sld");
-        chooser.setFileFilter(filter);
-        chooser.setMultiSelectionEnabled(false);
-        
-        int returnVal = chooser.showOpenDialog(this);
-        
-        if (returnVal == JFileChooser.APPROVE_OPTION) {
-            
-            try {
-                File sldFile = chooser.getSelectedFile();
-                finalRasterSymbolizer = SLDHandler.read(sldFile);
+               closeDialog();
 
-                // Update GUI
-                updateGUI();
-                
-            } catch (Exception ex) {
-                ErrorDialog.show(this, StringUtil.toFriendlyName(
-                        ex.getClass().getName()),
-                        ex.toString(),
-                        StringUtil.stackTrace(ex));
-            }
-        }
-        
-    }
-    
-    private void closeDialog() {
-        
-        GUIUtils.clearRasterStylerFromBlackBoard(context);
-        setVisible(false);
-        
-    }
-    
-    public double getNoDataValue() {
-        return rasterImageLayer.getNoDataValue();
-    }
-    
-    private void updateGUI() throws Exception {
-        
-        
if(finalRasterSymbolizer.getColorMapType().equals(RasterSymbology.TYPE_RAMP)) {
-                stretchedPanel.plugRasterSymbology(finalRasterSymbolizer);
-                jTabbedPane_Type.setSelectedIndex(0);
-        } else 
if(finalRasterSymbolizer.getColorMapType().equals(RasterSymbology.TYPE_INTERVALS))
 {
-                intervalPanel.plugRasterSymbology(finalRasterSymbolizer);
-                jTabbedPane_Type.setSelectedIndex(1);
-        } else 
if(finalRasterSymbolizer.getColorMapType().equals(RasterSymbology.TYPE_SINGLE)) 
{
-                singleValuesPanel.plugRasterSymbology(finalRasterSymbolizer);
-                jTabbedPane_Type.setSelectedIndex(2);
-        }
-    }
+       }
 
-    // Variables declaration - do not modify//GEN-BEGIN:variables
-    private javax.swing.JButton jButton_Apply;
-    private javax.swing.JButton jButton_Cancel;
-    private javax.swing.JButton jButton_Load;
-    private javax.swing.JButton jButton_NoDataValueColor;
-    private javax.swing.JButton jButton_OK;
-    private javax.swing.JButton jButton_Restore;
-    private javax.swing.JButton jButton_Save;
-    private javax.swing.JCheckBox jCheckBox_NoDataValue;
-    private javax.swing.JLabel jLabel_Transp_0;
-    private javax.swing.JLabel jLabel_Transp_100;
-    private javax.swing.JLabel jLabel_Transparency;
-    private javax.swing.JPanel jPanel_OtherParams;
-    private javax.swing.JSlider jSlider_Transparency;
-    private javax.swing.JTabbedPane jTabbedPane_Type;
-    private javax.swing.JTextField jTextField_TranspValue;
-    // End of variables declaration//GEN-END:variables
+       private void jButton_ApplyActionPerformed(java.awt.event.ActionEvent 
evt) {
 
-    private Color noDataColor;
-    java.util.ResourceBundle bundle = 
java.util.ResourceBundle.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle");
 // NOI18N
-    private final WorkbenchContext context;
-    private final RasterImageLayer rasterImageLayer;
-    private final int band;
-    private StretchedPanel stretchedPanel;
-    private IntervalPanel intervalPanel;
-    private SingleValuesPanel singleValuesPanel;
-    
-    private final MyVerifier verifier = new MyVerifier();
-    private RasterSymbology finalRasterSymbolizer;
+               // Update raster image
+               try {
+                       updateRasterImageLayer();
+               } catch (final Exception ex) {
+                       Logger.error(ex);
+               }
 
-    public RasterSymbology getFinalRasterSymbolizer() {
-        return finalRasterSymbolizer;
-    }
-    
-    class MyVerifier extends InputVerifier
-            implements ActionListener {
+       }
 
-        @Override
-        public boolean verify(JComponent input) {
-            
-            String value = jTextField_TranspValue.getText();
-            String sliderValue = 
Integer.toString(jSlider_Transparency.getValue());
-            if(value == null || value.equals("")){ //NOI18N
-                jTextField_TranspValue.setText(sliderValue);
-            } else {
-                try {
-                    int number = Integer.parseInt(value);
-                    if(number < 0 || number > 100) {
-                        jTextField_TranspValue.setText(sliderValue);
-                    } else {
-                        jSlider_Transparency.setValue(number);
-                    }
-                } catch(NumberFormatException ex) {
-                    jTextField_TranspValue.setText(sliderValue);
-                }
-            }
-            return true;
-        }
+       private void 
jSlider_TransparencyStateChanged(javax.swing.event.ChangeEvent evt) {
 
-        @Override
-        public void actionPerformed(ActionEvent e) {
-            throw new UnsupportedOperationException("Not supported yet."); 
//To change body of generated methods, choose Tools | Templates. //NOI18N
-        }
-        
-    }    
-    
-    private class DummyPanel extends JPanel implements StylePanel {
+               
jTextField_TranspValue.setText(Integer.toString(jSlider_Transparency.getValue()));
 
-        private static final long serialVersionUID = 2217457292163045134L;
+       }
 
-        private DummyPanel(String label) {
-            // GridBagLayout so it gets centered. [Jon Aquino]
-            super(new GridBagLayout());
-            add(new JLabel(label));
-        }
+       private void jButton_RestoreActionPerformed(java.awt.event.ActionEvent 
evt) {
 
-        @Override
-        public String getTitle() {
-            return ColorThemingStylePanel.TITLE;
-        }
+               try {
+                       final Collection<Layerable> layerables = 
context.getLayerableNamePanel().getSelectedLayerables();
+                       for (final Layerable lyr : layerables) {
+                               jButton_NoDataValueColor.setBackground(new 
java.awt.Color(204, 204, 204));
+                               jButton_NoDataValueColor.setForeground(new 
java.awt.Color(204, 204, 204));
+                               jSlider_Transparency.setValue(0);
+                               jTextField_TranspValue.setText("0");
+                               jCheckBox_NoDataValue.setSelected(false);
+                               stretchedPanel.reset();
+                               intervalPanel.reset();
+                               singleValuesPanel.reset();
+                               
finalRasterSymbolizer.setColorMapType(RasterSymbology.TYPE_RAMP);
+                               if (lyr instanceof RasterImageLayer) {
+                                       restoreToOriginal((RasterImageLayer) 
lyr);
+                               }
+                       }
+               } catch (final Exception ex) {
+                       Logger.error(ex);
+               }
 
-        @Override
-        public void updateStyles() {
-            // unused but defined in the interface
-        }
+       }
 
-        @Override
-        public String validateInput() {
-            return null;
-        }
-    }
+       private void jButton_OKActionPerformed(java.awt.event.ActionEvent evt) {
+
+               // Update raster image and close
+               try {
+                       updateRasterImageLayer();
+                       closeDialog();
+               } catch (final Exception ex) {
+                       Logger.error(ex);
+               }
+
+       }
+
+       private void fixComponents() throws Exception {
+
+               this.setTitle(RasterStylesExtension.extensionName);
+
+               /* Transparency text field */
+               jTextField_TranspValue.setInputVerifier(verifier);
+               jTextField_TranspValue.addActionListener(verifier);
+               
jTextField_TranspValue.setText(Integer.toString(jSlider_Transparency.getValue()));
+
+               final Stats stats = rasterImageLayer.getMetadata().getStats();
+               final Range minMaxValues = new Range(stats.getMin(band), true, 
stats.getMax(band), true);
+
+               stretchedPanel = new StretchedPanel(minMaxValues);
+               intervalPanel = new IntervalPanel(this, rasterImageLayer, 
minMaxValues);
+               singleValuesPanel = new SingleValuesPanel(this, 
rasterImageLayer.getValues(0), rasterImageLayer);// 
Utils.purgeNoData(rasterImageLayer.getActualRasterData(),
+                                                                               
                                                                                
                                                        // rasterImageLayer),
+                                                                               
                                                                                
                                                        // rasterImageLayer);
+
+               if (stats.getMin(band) == stats.getMax(band)) {
+                       final DummyPanel pan = new DummyPanel(
+                                       "No stretched classification available, 
this raster has only one value: " + stats.getMax(band));
+                       jTabbedPane_Type.addTab(
+                                       
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabStretched"),
 pan);
+                       jTabbedPane_Type.addTab(
+                                       
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabIntervals"),
+                                       intervalPanel);
+                       for (final Component c2 : 
intervalPanel.getComponents()) {
+                               c2.setEnabled(false);
+                       }
+               } else {
+                       jTabbedPane_Type.addTab(
+                                       
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabStretched"),
+                                       stretchedPanel);
+                       jTabbedPane_Type.addTab(
+                                       
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabIntervals"),
+                                       intervalPanel);
+               }
+               jTabbedPane_Type.addTab(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.tabSingleValues"),
+                               singleValuesPanel);
+               pack();
+
+               /* Startup symbology */
+               if (rasterImageLayer.getSymbology() != null) {
+
+                       this.finalRasterSymbolizer = 
rasterImageLayer.getSymbology();
+                       updateGUI();
+
+               }
+
+               // add RasterSymbolizer Object in BlackBoard, the key is the 
name of raster plus
+               // suffixBBoardKey var.
+               final String bboardKey = 
GUIUtils.getBBKey(String.valueOf(rasterImageLayer.getUUID()));
+               context.getBlackboard().put(bboardKey, this);
+
+       }
+
+       public void updateRasterImageLayer() throws Exception {
+
+               if (jTabbedPane_Type.getSelectedComponent() instanceof 
StretchedPanel) {
+                       finalRasterSymbolizer = 
stretchedPanel.getRasterStyler();
+               } else if (jTabbedPane_Type.getSelectedComponent() instanceof 
IntervalPanel) {
+                       finalRasterSymbolizer = intervalPanel.getRasterStyler();
+               } else if (jTabbedPane_Type.getSelectedComponent() instanceof 
SingleValuesPanel) {
+                       finalRasterSymbolizer = 
singleValuesPanel.getRasterStyler();
+
+               }
+
+               finalRasterSymbolizer
+                               
.setTransparency(GUIUtils.getAlpha_DecimalRange(Integer.parseInt(jTextField_TranspValue.getText())));
+
+               if (jCheckBox_NoDataValue.isSelected()) {
+                       
finalRasterSymbolizer.addColorMapEntry(rasterImageLayer.getNoDataValue(),
+                                       
jButton_NoDataValueColor.getBackground());
+               } else {
+                       
finalRasterSymbolizer.addColorMapEntry(rasterImageLayer.getNoDataValue(), null);
+               }
+
+               final Collection<Layerable> layerables = 
context.getLayerableNamePanel().getSelectedLayerables();
+               for (final Layerable lyr : layerables) {
+                       if (lyr instanceof RasterImageLayer) {
+                               apply((RasterImageLayer) lyr);
+                       }
+               }
+
+       }
+
+       public void apply(RasterImageLayer rasterImageLayer) throws Exception {
+               rasterImageLayer.setSymbology(finalRasterSymbolizer);
+               context.getLayerManager().fireLayerChanged(rasterImageLayer, 
LayerEventType.APPEARANCE_CHANGED);
+       }
+
+       private void restoreToOriginal(RasterImageLayer rasterImageLayer) 
throws NoninvertibleTransformException {
+               rasterImageLayer.setSymbology(null);
+       }
+
+       private void saveSld() {
+
+               if (finalRasterSymbolizer == null) {
+                       return;
+               }
+
+               final JFileChooser chooser = new 
JFileChooser(PirolPlugInSettings.configDirectory());
+               final String extension = "sld";
+               final FileNameExtensionFilter filter = new 
FileNameExtensionFilter(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.fileChooser.sld"),
+                               extension);
+               chooser.setFileFilter(filter);
+               final int returnVal = chooser.showSaveDialog(this);
+
+               if (returnVal == JFileChooser.APPROVE_OPTION) {
+
+                       try {
+                               File sldFile = chooser.getSelectedFile();
+                               if 
(!sldFile.getAbsolutePath().endsWith(extension)) {
+                                       sldFile = new File(sldFile + "." + 
extension);
+                               }
+
+                               SLDHandler.write(finalRasterSymbolizer, null, 
sldFile);
+                       } catch (final Exception ex) {
+                               ErrorDialog.show(this, 
StringUtil.toFriendlyName(ex.getClass().getName()), ex.toString(),
+                                               StringUtil.stackTrace(ex));
+                       }
+               }
+
+       }
+
+       private void loadSld() {
+
+               final JFileChooser chooser = new 
JFileChooser(PirolPlugInSettings.configDirectory());
+               final FileNameExtensionFilter filter = new 
FileNameExtensionFilter(
+                               
bundle.getString("org.openjump.core.rasterimage.styler.ui.RasterStylesDialog.fileChooser.sld"),
 "sld");
+               chooser.setFileFilter(filter);
+               chooser.setMultiSelectionEnabled(false);
+
+               final int returnVal = chooser.showOpenDialog(this);
+
+               if (returnVal == JFileChooser.APPROVE_OPTION) {
+
+                       try {
+                               final File sldFile = chooser.getSelectedFile();
+                               finalRasterSymbolizer = 
SLDHandler.read(sldFile);
+
+                               // Update GUI
+                               updateGUI();
+
+                       } catch (final Exception ex) {
+                               ErrorDialog.show(this, 
StringUtil.toFriendlyName(ex.getClass().getName()), ex.toString(),
+                                               StringUtil.stackTrace(ex));
+                       }
+               }
+
+       }
+
+       private void closeDialog() {
+
+               GUIUtils.clearRasterStylerFromBlackBoard(context);
+               setVisible(false);
+
+       }
+
+       public double getNoDataValue() {
+               return rasterImageLayer.getNoDataValue();
+       }
+
+       private void updateGUI() throws Exception {
+
+               if 
(finalRasterSymbolizer.getColorMapType().equals(RasterSymbology.TYPE_RAMP)) {
+                       
stretchedPanel.plugRasterSymbology(finalRasterSymbolizer);
+                       jTabbedPane_Type.setSelectedIndex(0);
+               } else if 
(finalRasterSymbolizer.getColorMapType().equals(RasterSymbology.TYPE_INTERVALS))
 {
+                       
intervalPanel.plugRasterSymbology(finalRasterSymbolizer);
+                       jTabbedPane_Type.setSelectedIndex(1);
+               } else if 
(finalRasterSymbolizer.getColorMapType().equals(RasterSymbology.TYPE_SINGLE)) {
+                       
singleValuesPanel.plugRasterSymbology(finalRasterSymbolizer);
+                       jTabbedPane_Type.setSelectedIndex(2);
+               }
+       }
+
+       // Variables declaration - do not modify//GEN-BEGIN:variables
+       private javax.swing.JButton jButton_Apply;
+       private javax.swing.JButton jButton_Cancel;
+       private javax.swing.JButton jButton_Load;
+       private javax.swing.JButton jButton_NoDataValueColor;
+       private javax.swing.JButton jButton_OK;
+       private javax.swing.JButton jButton_Restore;
+       private javax.swing.JButton jButton_Save;
+       private javax.swing.JCheckBox jCheckBox_NoDataValue;
+       private javax.swing.JLabel jLabel_Transp_0;
+       private javax.swing.JLabel jLabel_Transp_100;
+       private javax.swing.JLabel jLabel_Transparency;
+       private javax.swing.JPanel jPanel_OtherParams;
+       private javax.swing.JSlider jSlider_Transparency;
+       private javax.swing.JTabbedPane jTabbedPane_Type;
+       private javax.swing.JTextField jTextField_TranspValue;
+       // End of variables declaration//GEN-END:variables
+
+       private Color noDataColor;
+       java.util.ResourceBundle bundle = java.util.ResourceBundle
+                       
.getBundle("org/openjump/core/rasterimage/styler/resources/Bundle"); // NOI18N
+       private final WorkbenchContext context;
+       private final RasterImageLayer rasterImageLayer;
+       private final int band;
+       private StretchedPanel stretchedPanel;
+       private IntervalPanel intervalPanel;
+       private SingleValuesPanel singleValuesPanel;
+
+       private final MyVerifier verifier = new MyVerifier();
+       private RasterSymbology finalRasterSymbolizer;
+
+       public RasterSymbology getFinalRasterSymbolizer() {
+               return finalRasterSymbolizer;
+       }
+
+       class MyVerifier extends InputVerifier implements ActionListener {
+
+               @Override
+               public boolean verify(JComponent input) {
+
+                       final String value = jTextField_TranspValue.getText();
+                       final String sliderValue = 
Integer.toString(jSlider_Transparency.getValue());
+                       if (value == null || value.equals("")) { // NOI18N
+                               jTextField_TranspValue.setText(sliderValue);
+                       } else {
+                               try {
+                                       final int number = 
Integer.parseInt(value);
+                                       if (number < 0 || number > 100) {
+                                               
jTextField_TranspValue.setText(sliderValue);
+                                       } else {
+                                               
jSlider_Transparency.setValue(number);
+                                       }
+                               } catch (final NumberFormatException ex) {
+                                       
jTextField_TranspValue.setText(sliderValue);
+                               }
+                       }
+                       return true;
+               }
+
+               @Override
+               public void actionPerformed(ActionEvent e) {
+                       throw new UnsupportedOperationException("Not supported 
yet."); // To change body of generated methods,
+                                                                               
                                                                        // 
choose Tools | Templates. //NOI18N
+               }
+
+       }
+
+       private class DummyPanel extends JPanel implements StylePanel {
+
+               private static final long serialVersionUID = 
2217457292163045134L;
+
+               private DummyPanel(String label) {
+                       // GridBagLayout so it gets centered. [Jon Aquino]
+                       super(new GridBagLayout());
+                       add(new JLabel(label));
+               }
+
+               @Override
+               public String getTitle() {
+                       return ColorThemingStylePanel.TITLE;
+               }
+
+               @Override
+               public void updateStyles() {
+                       // unused but defined in the interface
+               }
+
+               @Override
+               public String validateInput() {
+                       return null;
+               }
+       }
 }



_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to