Mercurial > cgi-bin > hgweb.cgi > ImagePrep
diff src/name/blackcap/imageprep/OutQualSpinner.kt @ 20:71029c9bf7cd
Commit overlooked files.
author | David Barts <n5jrn@me.com> |
---|---|
date | Sat, 21 Nov 2020 10:15:35 -0800 |
parents | |
children | 0f3634a0816d |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/name/blackcap/imageprep/OutQualSpinner.kt Sat Nov 21 10:15:35 2020 -0800 @@ -0,0 +1,32 @@ +/* + * A standard spinner for inputting the output quality of a JPEG image. + */ +package name.blackcap.imageprep + +import java.awt.Toolkit +import javax.swing.* +import javax.swing.event.ChangeEvent +import javax.swing.event.ChangeListener +import java.util.logging.Level +import java.util.logging.Logger + +/* allowable JPEG quality range */ +private val MINQUAL = 0 +private val MAXQUAL = 100 + +class OutQualSpinner(val default: Int): JSpinner(SpinnerNumberModel(default, MINQUAL, MAXQUAL, 1)) +{ + init { + editor = JSpinner.NumberEditor(this) + value = default + noTaller() + addChangeListener( ChangeListener { + val v = value as? Int + if (v == null || v < MINQUAL || v > MAXQUAL) { + LOGGER.log(Level.INFO, "bad output quality: $value") + value = default + Toolkit.getDefaultToolkit().beep() + } + }) + } +}