## SwingGUI – Java-based GUI classes

last mod: 17-Oct-08 sciss

# SwingGUI

This class provides access to all SwingOSC view classes. Upon startup it registers with the GUI factory, becoming available through `GUI.swing` and `GUI.get( \swing )`.

See GUI for more details.

## Available Views

View Class | Description
JSCWindow | a frame that can contain gadgets
JSCButton | a multiple state push button
JSCPopUpMenu | a collapsed multiple choice button
JFont | a font typeface description
JSCSlider | a horizontal or vertical slider
JSCRangeSlider | interval slider
JSC2DSlider | horizontally and vertically moveable slider
JSCTextField | an editable one line text field
JSCListView | a list of text items
JSCStaticText | a text label
JSCNumberBox | editable number field
JSCDragSource | object container acting as a source for drag-n-drop
JSCDragSink | object container acting as a target for drag-n-drop
JSCDragBoth | combination of DragSource and DragSink
JStethoscope | oscilloscope tool
JSCScope | oscilloscope view
JFreqScope | spectrum tool
JSCFreqScope | spectrum view
JSCUserView | view with customizable graphics
JSCTabletView | view for graphic tablet control
JPen | tool to use with JSCUserView and JSCWindow
JSCTextView | multiline attributed text editor
JSCPanel | a container with advanced layout management
JSCHLayoutView | container with children placed horizontally
JSCVLayoutView | container with children placed vertically
JSCCompositeView | generic container
JSCScrollView | container with scrollbars to handle a large virtual viewport
JKnob | user view that paints a knob / dial button
SwingDialog | file selection dialog management
JSCMultiSliderView | array of sliders
JSCEnvelopeView | breakpoint function editor
JSCSoundFileView | audio file waveform display
JSCMovieView | video and still image display
JSCCheckBox | checkmark toggle button
JSCTabbedPane | hosts multiple containers that can be switched through tabs
JSCScrollBar | slider to navigate virtual viewports
JSCPeakMeterView | volume level peak meter display

## UGen Replacements

There are replacements for the Mac-only Mouse UGens:

UGen Class | Description
JMouseX | track horizontal mouse position
JMouseY | track vertical mouse position
JMouseButton | track mouse button pressing
JKeyState | track keyboard typing

## Other Platform Specific Classes

Class | Description
JSpeech | text-to-speech synthesizer