Client Library
VAquaClient is a library that may be useful in any application that uses VAqua, including multi-platform applications.
Sheets
VAquaClient supports sheets using the VSheet class. VSheet provides basic methods for displaying a Window or a Dialog as a sheet. VSheet also provides convenience methods for displaying aJOptionPane
or a JFileChooser
as a sheet.
VSheet uses reflection to access the sheet support in VAqua, allowing it to be used in multi-platform applications. If VAqua is not available or has not been installed, the VSheet methods provide default behaviors. For most methods, the default behavior is to fall back to displaying an ordinary (dialog) window. The most basic method throws an exception if a window cannot be displayed as a sheet, so that the application can decide what to do instead.
Segmented Controls
Creating a segmented control using Aqua or VAqua involves creating a set of buttons, configuring them with multiple client properties, and arranging them appropriately. VAquaClient simplifies this process using the SegmentedControlBuilder class. If the installed look and feel is not Aqua or VAqua, a row of individual buttons is created.
Appearance Support
VAquaClient supports access to macOS appearances and system colors using the AppearanceSupport class. This class uses reflection to access the VAppearances library, allowing it to be used in multi-platform applications.
JTable Support for the Inset View Style
VAquaClient provides JTableWithMargins, a subclass of JTable that supports the extra margins needed by VAqua to implement the inset view style.
Links
- View VAquaClient API documentation
- Download VAquaClient JAR file
- Download VAquaClient Source code