All Classes and Interfaces

Class
Description
A delegate object for text event listeners served by the numerous TextComponent types.
A wrapper for mig layout constraint string to avoid the inherent brittleness of strings...
An AnimatedStyler is conceptually a union of the Animation and Styler functions, which is to say that it takes both an AnimationState and a ComponentStyleDelegate to produce a new ComponentStyleDelegate with some style properties applied to it (usually based on the AnimationState).
An animation is a function which is called repeatedly during its lifetime, which is determined by a LifeTime and a RunCondition.
The state of an animation at a given point in time describing how far the animation has progressed using a number between 0 and 1 (see AnimationState.progress()).
An API for creating an Animation and defining how it should be executed.
This interface defines a basic table model which can be used to create a table model using lambda expressions.
The class below is a functional builder for creating a lambda based implementation of the BasicTableModel.
Implementations of this functional interface translate to the TableModel.isCellEditable(int, int) method.
Implementations of this functional interface translate to the TableModel.getColumnClass(int) method.
Implementations of this functional interface translate to the TableModel.getColumnCount() method.
Implementations of this functional interface translate to the TableModel.getColumnName(int) method.
Implementations of this functional interface translate to the TableModel.getValueAt(int, int) method.
Implementations of this functional interface translate to the TableModel.setValueAt(Object, int, int) method.
Implementations of this functional interface translate to the TableModel.getRowCount() method.
An immutable value object that represents the position and size of a component in the form of an x and y coordinate modeled by a Location object and a width and height modeled by a Size object.
A generic interface for builder objects which is used by the SwingTree API to call the build methods of the builder objects for you and then use the built object as part of a SwingTree UI.
The listener interface for receiving the button clicked ActionEvent.
This class models the state of an individual table/list/drop down cell alongside various properties that a cell should have, like for example the value of the cell, its position within the table as well as a renderer in the form of a AWT Component which may or not be replaced or modified.
Instances of this are delegates for a specific components and events that are passed to user event action handlers (see Action), with the purpose of providing useful context information to the action handler.
A JComponent and MouseEvent delegate providing useful context information to various Action listeners used by UIForAnySwing.onMouseDrag(Action) like for example the ComponentMouseEventDelegate.mouseX() and ComponentMouseEventDelegate.mouseY() of the event as well as more drag specific information like ComponentDragEventDelegate.dragEvents() and ComponentDragEventDelegate.dragPositions().
Is attached to UI components in the form of a client property.
A JComponent as well as MouseEvent delegate providing useful context information to various Action listeners which are typically registered through UIForAnySwing.onMouseClick(sprouts.Action)}, UIForAnySwing.onMousePress(sprouts.Action) and UIForAnySwing.onMouseRelease(sprouts.Action), among others.
A ComponentStyleDelegate is a delegate for a JComponent and its StyleConf configuration used to apply further specify the style of said JComponent.
A configurator is a functional interface that takes a configuration object and returns a transformed configuration object.
An enum representing the possible answers to a confirmation dialog.
An immutable builder class for creating simple confirmation dialogs based on the JOptionPane class, more specifically the JOptionPane.showOptionDialog(Component, Object, String, int, int, Icon, Object[], Object) method.
This is a synchronized singleton wrapping a BlockingQueue.
A view model for a single entry in a JScrollPanels.
One of Swing's biggest drawback is that it is single threaded.
The filter configuration object defines if and how a filter should be applied on the rendering of the parent of a particular component.
Used by NoiseFunction.andThen(FloatFunction) to apply a scalar function to the result of a noise function or to the input of a noise function using NoiseFunction.compose(FloatFunction).
An immutable, wither-like method based config API for font styles that is part of the full StyleConf configuration object.
An immutable config API for specifying a gradient style.
Primarily designed to be implemented by an Enum type that declares a set of icon paths so that the enum instances can be used to identify and load (cached) icons across your application.
This class represents the style of an image which can be drawn onto the inner area of a component.
JBox is a generic lightweight container similar to javax.swing.JPanel, but with 2 important differences: The JBox is transparent by default, meaning that it does not paint its background if it is not explicitly set through the style API.
A more advanced glass pane implementation than the default Swing glass pane of a JRootPane object (A regular JPanel.
A JLabel subclass specifically designed to display icons only.
The JScrollPanels class is a container for a list of scrollable UI components representing view models or simple data models which are dynamically turned into views by a ViewSupplier.
Instances of this are entries of this JScrollPanels.
An implementation of a "split button" where the left (larger) side acts like a normal button and the right side down arrow based button opens an attached JPopupMenu.
This is a simple Singleton class representing the current state of the keyboard.
This enum represents all the keys on the keyboard which can be queried for their current state.
An abstract representation of an immutable layout configuration for a specific component, for which layout manager specific implementations can be instantiated through various factory methods like Layout.border(), Layout.flow(), Layout.grid(int, int)...
The Layout.BorderLayoutInstaller layout is a layout that represents a BorderLayout layout configuration for a component, which consists of the horizontal gap and vertical gap.
The Layout.ForBoxLayout layout is a layout that represents a BoxLayout layout configuration for a component, which consists of the axis.
The Layout.ForFlowLayout layout is a layout that represents a FlowLayout layout configuration for a component.
The Layout.ForMigLayout layout is a layout that represents a MigLayout layout configuration for a component.
The Layout.GridLayoutInstaller layout is a layout that represents a GridLayout layout configuration for a component, which consists of the number of rows, number of columns, horizontal gap and vertical gap.
The Layout.None layout is a layout that represents the absence of a LayoutManager for a component.
The Layout.Unspecific layout is a layout that represents the lack of a specific layout being set for a component.
A wrapper for mig layout constraint string to avoid the inherent brittleness of strings...
The lifespan defines when an Animation starts and for how long it should run.
The lifetime is an immutable and thread safe value based object, which defines for how long an Animation should run.
A context object providing JList entry specific context information for the functional ListEntryRenderer interface, which is used to render list entries.
A functional interface allowing you to define how a JList entry should be rendered in a declarative manner through method UIForList.withRenderComponent(ListEntryRenderer).
An immutable value based class that represents a location in a two-dimensional coordinate system specified in float precision and specifically designed for Swing components.
If you are using builders for your custom Swing components, implement this to allow the UI builder to call the MenuBuilder.build() method for you!
An immutable builder class for creating simple message dialogs (errors, warnings, infos...) based on the JOptionPane class, more specifically the JOptionPane.showMessageDialog(Component, Object, String, int, Icon) method.
This MouseWheelListener exists to make JScrollPane scroll behavior the same as one is used to from a browser, where the mouse over a scrollable control will scroll that control until the control bottoms out, and then continues to scroll the parent JScrollPane, usually the JScrollPane for the whole page.
A noise gradient configuration which is used to define a noise gradient style for a component based on a NoiseFunction which is a function that takes a coordinate and returns a value between 0 and 1.
A noise function is used to render NoiseConf styles by taking a float based coordinate and returning a gradient value between 0 and 1.
A collection of noise functions that can be used to generate procedural textures.
A container object for AWT Component types which may or may not contain a non-null value.
OptionsDialog<E extends Enum<E>>
An immutable builder class for creating simple enum based option dialogs where the user can select one of the enum options.
 
A functional interface for doing custom painting on a component using the Graphics2D API.
Applies an action to the current component typically as part of UIForAnySwing through method UIForAnything.peek(Peeker) with the purpose of expose the underlying component to the user while preserving a declarative method chaining based builder API usage pattern.
Represents the progress snapshot of an animation in terms of numbers between 0 and 1 that describe how far the animation has progressed between its start and end.
RenderAs<C extends JComponent,E,T extends E>
This class models the API of the RenderBuilder which allows you to specify how a cell should be rendered.
A builder type for creating cell renderer for a list, combo box or table using a fluent API, typically through methods like UIForList.withRenderer(Configurator), UIForCombo.withRenderer(Configurator) or UIForTable.withRenderer(Configurator), where the builder is exposed to the configurator lambda.
An immutable config API designed for defining shadow styles as part of the full StyleConf configuration object.
An immutable value object that represents a size in the form of a width and height or lack thereof.
The listener interface for receiving action events.
The listener interface for receiving the split clicked ActionEvent.
This class is a delegate for events of the JSplitButton component.
An immutable data carrier exposing everything needed to configure an item of a JSplitButton.
Instances of this are delegated to the individual JSplitButton items and their ActionEvents exposed to you inside your Action handlers, like for example one you would supply to SplitItem.onSelection(Action).
Defines either an animation progresses from 0 to 1 or regresses from 1 to 0.
Implementations of this interface are SwingTree native components which enjoy the full support of the style API.
An immutable config container with cloning based update methods designed for functional JComponent styling.
A Styler is a function that takes a ComponentStyleDelegate and then transforms and returns it with some new style properties (see UIForAnySwing.withStyle(Styler)).
An abstract class intended to be extended to create custom CSS look-alike source code based style sheets for your Swing application.
A StyleTrait contains a set of properties that will be used to target specific JComponents matching said properties, so that you can associate custom Styler lambdas with them which are using the ComponentStyleDelegate API to configure the style of the component.
A specialized ImageIcon subclass that allows you to use SVG based icon images in your GUI.
If you are using builders for your custom Swing components, implement this to allow the UI builder to call the SwingBuilder.build() method for you!
A SwingTree is a singleton that holds global configuration context for the SwingTree library.
A functional interface for configuring a SwingTree instance through SwingTree.initialiseUsing(SwingTreeConfigurator).
An immutable configuration object for the SwingTree library, which can be configured using a functional SwingTreeConfigurator lambda passed to SwingTree.initialiseUsing(SwingTreeConfigurator).
Defines how the Font, specified through SwingTreeInitConfig.defaultFont(Font), is installed in the UIManager.
Defines how the scaling factor for the UI should be determined.
An immutable data carrier exposing everything needed to configure a tab of a JTabbedPane.
A JTabbedPane delegate providing useful context information to various Action listeners used by UIForTabbedPane.onTabMouseClick(Action), UIForTabbedPane.onTabMousePress(Action) and UIForTabbedPane.onTabMouseRelease(Action), for example.
A simple functional interface whose implementations are used to form simple TableModel implementations based on lists of lists.
A simple functional interface whose implementations are used to form simple TableModel implementations based on a mapping of column names to columns.
An immutable configuration type which holds custom text as well as placement and font properties used for rendering text onto a Swing component.
A delegate object for the Action lambda passed to the UIForAnyTextComponent.onTextInsert(Action) method, which is used to register a listener for text insertion events.
A delegate object for the Action lambda passed to the UIForAnyTextComponent.onTextRemove(Action) method, which is used to register a listener for text removal events.
A delegate object for the Action lambda passed to the UIForAnyTextComponent.onTextReplace(Action) method, which is used to register a listener for text replacement events.
This class is a static API for exposing swing tree builder types for wrapping and assembling various JComponent types to form a UI tree.
A general purpose enum describing if something is never, always or sometimes active.
Vertical or horizontal alignment.
The logical combination of a vertical and horizontal alignment.
Used to define how a layout manager (typically the BoxLayout) will lay out components along the given axis.
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
This Color class is a refined and more complete/modernized implementation of the Color class which models colors in the default sRGB color space or colors in arbitrary color spaces identified by a ColorSpace.
{inheritDoc}
{inheritDoc}
Defines the areas of a component, which is used to by the ImageConf to determine if and how an image should be clipped.
Enum representing the different boundaries of a UI component.
Use this to specify the orientation of a component.
Use this in the style API (see UIForAnySwing.withStyle(Styler)) to target specific corners of a JComponent and apply custom StyleConf properties to them.
An enum set of all the available swing cursors which map to the cursor type id.
Used to specify the cycle method for a gradient conf in the style API.
Use this to target specific edges of a JComponent and apply custom StyleConf properties to them.
{inheritDoc}
This enum is used to specify how an image or icon (usually a SvgIcon) should be scaled to fit the dimensions of the component that it is being rendered into, like for example through the SvgIcon.paintIcon(java.awt.Component, Graphics, int, int) method.
This class represents a SwingTree font and is used to specify the font of a component.
Use this to specify the font style of a component.
Use these enum instances to specify the gradient type for various sub styles, like for example the gradient style API exposed by ComponentStyleDelegate.gradient(Layer, String, Configurator) or ComponentStyleDelegate.gradient(Configurator) methods (see UIForAnySwing.withStyle(Styler)).
Different positions along a horizontally aligned UI component.
{inheritDoc}
Instances of this enum are used to configure onto which layer a particular style configuration should be applied.
{inheritDoc}
Defines whether the list based data model of a JTable is row or column major and whether it is editable or not.
Set of enum instances defining common types of Swing look and feels.
Defines whether the data model of a JTable should be editable or not.
{inheritDoc}
{inheritDoc}
{inheritDoc}
Defines the different types of noise functions that can be used to render a NoiseConf style.
Defines a set of close operations for a JDialog or JFrame windows.
Overflow policy of UI components.
{inheritDoc}
{inheritDoc}
Use this to specify the placement of an image as part of the ImageConf through the ImageConf.placement(Placement) method exposed by the style API (see UIForAnySwing.withStyle(Styler)).
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
All UI components are at their core rectangular, meaning they always have exactly 4 uniquely identifiable sides.
{inheritDoc}
Use these enum instances to specify the gradient alignment for various sub styles, like for example the gradient style API exposed by ComponentStyleDelegate.gradient(Configurator) or ComponentStyleDelegate.gradient(Configurator) methods (see UIForAnySwing.withStyle(Styler)).
{inheritDoc}
An implementation of a "split button" where the left (larger) side acts like a normal button and the right side down arrow based button opens an attached JPopupMenu.
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
{inheritDoc}
Different positions along a vertically aligned UI component.
UIEnum<E extends Enum<E>>
A set of extension methods for various SwingTree enums.
A namespace for useful factory methods like UIFactoryMethods.color(String) and UIFactoryMethods.font(String), and layout constants (see UILayoutConstants).
The following is a more specialized type of builder node based on the UIForAnySwing builder type, and provides additional features associated with the more specialized AbstractButton" Swing component type.
 
A builder for JMenuItems.
 
A generic SwingTree builder node designed as a basis for configuring any kind of JComponent instance.
A SwingTree builder node designed for configuring various kinds of JTextComponent instances in a fluent and declarative way.
An abstract precursor for swing tree builder nodes for JToggleButton instances.
A SwingTree builder node for configuring any kind of Window type.
UIForBox<B extends JBox>
A SwingTree builder node designed for configuring JBox instances.
A SwingTree builder node designed for configuring AbstractButton sub-type instances, usually the JButton type.
A SwingTree builder node designed for configuring JCheckBox instances.
 
A SwingTree builder node designed for configuring JComboBox instances.
A SwingTree builder node designed for configuring JEditorPane instances.
 
UIForIcon<I extends JIcon>
A UIForAnySwing subclass specifically designed for adding icons to your SwingTree.
 
A declarative builder for JFrame components.
A SwingTree builder node designed for configuring JLabel instances.
UIForList<E,L extends JList<E>>
A SwingTree builder node designed for configuring JList instances.
UIForMenu<M extends JMenu>
A SwingTree builder node designed for configuring JMenu instances.
A SwingTree builder node designed for configuring JMenuItem instances.
A SwingTree builder node designed for configuring JPanel instances.
A SwingTree builder node designed for configuring JPasswordField instances.
A SwingTree builder node designed for configuring JPopupMenu instances.
A SwingTree builder node designed for configuring JProgressBar instances.
A SwingTree builder node designed for configuring JRadioButton instances.
A SwingTree builder node designed for configuring JRadioButtonMenuItem instances.
A SwingTree builder node designed for configuring JScrollPane instances.
A builder node for JScrollPanels, a custom SwingTree component, which is similar to a JList but with the ability to interact with the individual components in the list.
A SwingTree builder node designed for configuring JSeparator instances.
A SwingTree builder node designed for configuring JSlider instances.
A SwingTree builder node designed for configuring JSpinner instances.
A SwingTree builder node designed for configuring JSplitButton instances.
A SwingTree builder node designed for configuring JSplitPane instances.
A SwingTree builder node designed for configuring JComponent types.
A SwingTree builder node designed for configuring JTabbedPane instances.
A SwingTree builder node designed for configuring JTable instances allowing for a fluent API to build tables in a declarative way.
A declarative builder node for the UI.TableHeader component.
A SwingTree builder node designed for configuring JTextArea instances.
A SwingTree builder node designed for configuring JTextField instances.
A SwingTree builder node designed for configuring UIForTextPane instances.
A SwingTree builder node designed for configuring JToggleButton instances.
 
Essentially just a namespace for static layout constants for the MigLayout LayoutManager type.
A functional interface for doing swing component validity verification.
A provider of a view, usually a view model or a simple data model with the purpose of making it possible to dynamically creating sub-views for inside a view for a given sub-view model.
A delegate for any kind of Swing window, usually a JFrame or a JDialog, which is passed to the event handlers in the SwingTree API.