view src/samer/core_/viewers/BooleanViewer.java @ 5:b67a33c44de7

Remove some crap, etc
author samer
date Fri, 05 Apr 2019 21:34:25 +0100
parents bf79fb79ee13
children
line wrap: on
line source
/*
 *	BooleanViewer.java	
 *
 *	Copyright (c) 2000, Samer Abdallah, King's College London.
 *	All rights reserved.
 *
 *	This software is provided AS iS and WITHOUT ANY WARRANTY; 
 *	without even the implied warranty of MERCHANTABILITY or 
 *	FITNESS FOR A PARTICULAR PURPOSE.
 */

package samer.core.viewers;
import  samer.core.types.*;
import  samer.core.util.*;
import  samer.core.*;
import  java.util.*;
import  java.awt.*;
import  java.awt.event.*;

public class BooleanViewer extends VariableViewer implements ItemListener
{
	VBoolean	vbool;
	Checkbox	cb;

	public BooleanViewer(Viewable v) { this((VBoolean)v); }
	public BooleanViewer(VBoolean vbool) 
	{ 
		super(vbool);
		this.vbool = vbool;

		setText(null);
		cb = new Checkbox(vbool.getLabel());
		cb.addItemListener(this);
		add(cb);
		update(null,null);
	}

	public void update(Observable o, Object source) // &&&
	{
		if (source!=this) cb.setState(vbool.value);
		super.update(o,source);
	}

	public void itemStateChanged(ItemEvent e)	
	{
		vbool.value = (e.getStateChange()==ItemEvent.SELECTED);
		vbool.changed(this);
	}
}