legendcontrolpanel.java

来自「JPowerGraph is a Java library for creati」· Java 代码 · 共 75 行

JAVA
75
字号
package net.sourceforge.jpowergraph.viewcontrols;

import java.awt.BorderLayout;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.BorderFactory;
import javax.swing.JCheckBox;
import javax.swing.JPanel;

import net.sourceforge.jpowergraph.lens.LegendLens;
import net.sourceforge.jpowergraph.lens.Lens;
import net.sourceforge.jpowergraph.lens.LensListener;
import net.sourceforge.powerswing.panel.PPanel;

/**
 * @author Mick Kerrigan
 *
 * Created on 05-Aug-2005
 * Committed by $Author: morcen $
 *
 * $Source: /cvsroot/jpowergraph/swing/src/net/sourceforge/jpowergraph/viewcontrols/LegendControlPanel.java,v $,
 * @version $Revision: 1.1 $ $Date: 2005/08/09 12:43:23 $
 */
public class LegendControlPanel extends JPanel {
    
    private JCheckBox showLegend;
    private LegendLens legendLens;
    
    public LegendControlPanel(LegendLens theLegendLens) {
        this(theLegendLens, true);
    }
    
    public LegendControlPanel(LegendLens theLegendLens, boolean showLegendValue) {
        super();
        legendLens = theLegendLens;
        showLegend = new JCheckBox("Show Legend", showLegendValue);
        showLegend.setBorder(BorderFactory.createEmptyBorder());
        showLegend.setEnabled(legendLens != null);
        setSelectedItemFromLens();
        
        this.setLayout(new BorderLayout());
        this.add(new PPanel(1, 1, 0, 0, new Object[]{
                "",     "0",
                "0",    showLegend
        }, 0, 0, 0, 0));
        this.addActionListeners();
    }

    private void addActionListeners() {
        if (legendLens != null && showLegend != null){
            showLegend.addItemListener(new ItemListener() {
                public void itemStateChanged(ItemEvent e) {
                    if (legendLens.isShowLegend() != showLegend.isSelected()){
                        legendLens.setShowLegend(showLegend.isSelected());
                    }
                }
            });
        }
        
        if (legendLens != null){
            legendLens.addLensListener(new LensListener() {
                public void lensUpdated(Lens lens) {
                    setSelectedItemFromLens();
                }
            });
        }
    }

    protected void setSelectedItemFromLens() {
        if (legendLens != null && showLegend != null){
            showLegend.setSelected(legendLens.isShowLegend());
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?