Mercurial > hg > jslab
view src/samer/core_/viewers/swing/IntegerViewer.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
/* * IntegerViewer.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.swing; import samer.core.types.*; import samer.core.*; import java.awt.*; import java.awt.event.*; import java.util.*; import javax.swing.*; public class IntegerViewer extends NumberViewer { VInteger model; JSlider s; public IntegerViewer(Viewable v) { this((VInteger)v); } public IntegerViewer(VInteger model) { super(model); this.model = model; init(); } protected JComponent createSlider() { s=new JSlider( JSlider.HORIZONTAL, model.getMin(), model.getMax(),model.value); s.addChangeListener(this); return s; } protected void setText() { t.setText(model.string()); } protected void getText() { model.decode(t.getText()); } protected void getSlider() { model.value = s.getValue(); } protected void setSlider() { if (model.value>s.getMaximum()) { s.setMaximum(model.value); } else if (model.value<s.getMinimum()) { s.setMinimum(model.value); } s.setValue( model.value); } public void update(Observable obs, Object arg) { if (arg==VInteger.NEW_RANGE) { s.setMinimum(model.getMin()); s.setMaximum(model.getMax()); } else super.update(obs,arg); } }