From 422b9b493ad869c9ef6cedffbc77f8d57b7334d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Michaud?= Date: Sat, 26 Mar 2022 23:29:44 +0100 Subject: [PATCH] heatmap_style --- .../rasterimage/styler/ui/HeatMapPanel.java | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/org/openjump/core/rasterimage/styler/ui/HeatMapPanel.java diff --git a/src/org/openjump/core/rasterimage/styler/ui/HeatMapPanel.java b/src/org/openjump/core/rasterimage/styler/ui/HeatMapPanel.java new file mode 100644 index 000000000..934da7b3e --- /dev/null +++ b/src/org/openjump/core/rasterimage/styler/ui/HeatMapPanel.java @@ -0,0 +1,72 @@ +package org.openjump.core.rasterimage.styler.ui; + +import com.vividsolutions.jump.workbench.Logger; +import org.openjump.core.rasterimage.RasterImageLayer; + +import javax.swing.*; +import java.awt.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +public class HeatMapPanel extends JPanel { + + private final Component parent; + private final RasterImageLayer rasterImageLayer; + private final int numbands; + private final JSlider[] sliders; + private final JButton[] colorButtons; + + public HeatMapPanel(Component parent, RasterImageLayer rasterImageLayer, int numbands) { + this.parent = parent; + this.rasterImageLayer = rasterImageLayer; + this.numbands = numbands; + this.sliders = new JSlider[numbands]; + this.colorButtons = new JButton[numbands]; + initComponents(); + fixComponents(); + } + + private void initComponents() { + GridBagConstraints c = new GridBagConstraints(); + this.setLayout(new GridBagLayout()); + //c.gridx = 0; + c.gridy = 0; + for (int i = 0 ; i < numbands ; i++) { + c.gridx = 0; + sliders[i] = new JSlider(0,255); + add(sliders[i], c); + c.gridx = 1; + colorButtons[i] = new JButton(); + c.gridy++; + } + } + + + private void fixComponents() { + + } + + public void reset() { + try { + for (int i = 0 ; i < numbands ; i++) { + sliders[i].setValue(127); + } + } catch (Exception ex) { + Logger.error(ex); + } + } + + static class ColorButton extends JButton { + ColorButton() { + super(); + this.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + JColorChooser jcc = new JColorChooser(); + jcc.setVisible(true); + ColorButton.this.setBackground(jcc.getColor()); + } + }); + } + } +}