001// License: GPL. For details, see Readme.txt file. 002package org.openstreetmap.gui.jmapviewer.checkBoxTree; 003 004import org.openstreetmap.gui.jmapviewer.AbstractLayer; 005import org.openstreetmap.gui.jmapviewer.LayerGroup; 006 007/** 008 * Node Data for checkBox Tree 009 * 010 * @author galo 011 */ 012public class CheckBoxNodeData { 013 private AbstractLayer layer; 014 015 public CheckBoxNodeData(final AbstractLayer layer) { 016 this.layer = layer; 017 } 018 019 public CheckBoxNodeData(final String txt) { 020 this(new LayerGroup(txt)); 021 } 022 023 public CheckBoxNodeData(final String txt, final Boolean selected) { 024 this(new LayerGroup(txt)); 025 layer.setVisible(selected); 026 } 027 028 public Boolean isSelected() { 029 return layer.isVisible(); 030 } 031 032 public void setSelected(final Boolean newValue) { 033 layer.setVisible(newValue); 034 } 035 036 public String getText() { 037 return layer.getName(); 038 } 039 040 public AbstractLayer getAbstractLayer() { 041 return layer; 042 } 043 044 public void setAbstractLayer(final AbstractLayer layer) { 045 this.layer = layer; 046 } 047 048 @Override 049 public String toString() { 050 return getClass().getSimpleName() + '[' + getText() + '/' + isSelected() + ']'; 051 } 052}