Description
JavaFX Tools provided in the library :
1) CustomStage - Stylable Undecorated Window
2) SceneManager - Tool to manage all the scenes and their Controllers
3) FileLoader - Tool to load Files
See the full description/examples at wiki : https://github.com/Oshan96/CustomStage/wiki
CustomStage alternatives and similar libraries
Based on the "GUI" category.
Alternatively, view CustomStage alternatives based on common mentions on social networks and blogs.
CodeRabbit: AI Code Reviews for Developers
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of CustomStage or a related project?
README
CustomStage
A JavaFX undecorated stage which can fully be customized
Donations
If this project is helpful to you and love my work and feel like showing love/appreciation, would you like to buy me a coffee?
An Implementation See the code in wiki at "A complete implementation"
Additional Tools provided (After v1.3.0)
Checkout the CustomStage Wiki for more examples and documentation.
Using CustomStage ?
- Fork the repository and update with this readme's Projects using CustomStage section in the following format adding your project details and do a Pull Request!
Project_Name : Brief_Description
Projects using CustomStage
- RentLio : This is a vehicle reservation system. Which is made with JavaFX and also using hibernate and RMI.
Overview
This CustomStage is a JavaFX undecorated Stage. To put it simple, CustomStage is a Window and you can add different views (FXML files) to the window (like changing the scene of the window) as you prefer. The basic problem making the Stage "Undecorated" is that you will not be able to, 1) Resize the window using mouse. 2) Lose the default action buttons. 3) Move the window (by dragging) (etc.)
So, CustomStage will get rid of all of these issues since it includes, 1) Window resizing (the ResizeHelper class is used here with minor modifications) -> ResizeHelper class 2) Default action buttons and their behaviour (close, maximize/restore, minimize) 3) Window dragging
What else?
- Window is automatically scaled as for screen resolution
- Very responsive
- Apart from those, this is called CustomStage since it can be customized as you wish
How?
- Easy. You can get your customized Stage using the [CustomStageBuilder](src/main/java/lk/vivoxalabs/customstage/CustomStageBuilder.java) class. This class includes all the methods you will need to customize your window.
How to use?
Starting from version 1.3.1 CustomStage releases are/will be available through JCenter and MavenCentral
Maven
<dependency>
<groupId>lk.vivoxalabs.customstage</groupId>
<artifactId>CustomStage</artifactId>
<version>1.3.2</version>
</dependency>
Gradle
dependencies {
compile 'lk.vivoxalabs.customstage:CustomStage:1.3.2'
}
Download via Jitpack (Will not be possible for releases after v1.3.1)
- v1.3.1 CustomStage via JitPack (See the releases here : https://jitpack.io/#Oshan96/CustomStage)
Gradle
Add jitpack as a repository
repositories {
maven { url 'https://jitpack.io' }
}
Add dependancy
dependencies {
compile 'com.github.Oshan96:CustomStage:v1.3.1'
}
Maven
Add jitpack as a repository
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add dependancy
<dependency>
<groupId>com.github.Oshan96</groupId>
<artifactId>CustomStage</artifactId>
<version>v1.3.1</version>
</dependency>
Or download and add as a dependancy to your project
- Binaries can be found at CustomStage binaries
How to use a CustomStage?
- An example is provided in [How to use a CustomStage](examples/v1_0_0/StageTest.java) for a complete implementation
- To achieve transparency, see [Transparent CustomStage](examples/v1_0_0/TransparentStage.java)
- CustomStage with custom icons for (close,minimize,maximize/restore) buttons [CustomStage with custom icons](examples/v1_0_0/CustomIconStage.java)
Documentation
CustomStage API Documentation can be found here : CustomStage Documentation
Any issue detected?
Feel free to post issues in "Issues" for further improvements
*Note that all licence references and agreements mentioned in the CustomStage README section above
are relevant to that project's source code only.