Skip to content

Techsenger StagePro is a library for creating custom JavaFX stages with full control over the appearance and layout

License

Notifications You must be signed in to change notification settings

techsenger/stagepro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Techsenger StagePro

Overview

Techsenger StagePro is a library that allows you to create custom stages with nearly any configuration, while remaining easy to use. The project also includes a sampler module, featuring key samples to help you get started with the library.

Demo

StagePro Demo

Features

Key features include:

  • Fully customizable title bar configurations.
  • Support for dynamic configuration changes.
  • Ability to place basic buttons on either the left or right side.
  • Two policies for the maximize button.
  • Styling with CSS.
  • Dark mode support.
  • Size effect (disabled by default).
  • Only two events triggered during resizing (start and finish).

Currently, shadow for Stage is not supported, as it seems there is no way to set a shadow around a Stage using JavaFX. It is likely that this can only be achieved using native code.

JavaFX Versions

Due to some bugs, use JavaFX versions 16–20, or a version of JavaFX after 24-ea+19 (see JDK-8344372).

Dependencies

The project will be added to the Maven Central repository in a few weeks.

Usage

To create a standard Stage, use the code below. To explore all features, check out the examples in the sampler.

@Override
public void start(Stage stage) {
    var controller = new StandardStageController(stage, 800, 600);
    var content = new VBox(...);
    controller.setContent(content);
    stage.show();
}

Code Building

To build the library use standard Git and Maven commands:

git clone https://github.com/techsenger/stagepro
cd stagepro
mvn clean install

Running Sampler

To run the sampler execute the following commands in the root of the project:

cd stagepro-sampler
mvn javafx:run

Please note, that debugger settings are in stagepro-sampler/pom.xml file.

License

Techsenger StagePro is licensed under the Apache License, Version 2.0.

Feedback

Any feedback is welcome. Besides, it would be interesting to know for what cases this project is used. It will help to understand the way the project should go and provide more information in documentation.

About

Techsenger StagePro is a library for creating custom JavaFX stages with full control over the appearance and layout

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published