UndecoratorBis

A fork of in-sideFX window decoration API for JavaFX, see also https://bintray.com/in-sidefx

License

License

Categories

Categories

Net
GroupId

GroupId

net.raumzeitfalle.fx
ArtifactId

ArtifactId

undecorator
Last Version

Last Version

0.1.0
Release Date

Release Date

Type

Type

jar
Description

Description

UndecoratorBis
A fork of in-sideFX window decoration API for JavaFX, see also https://bintray.com/in-sidefx
Project URL

Project URL

https://github.com/in-sideFX/UndecoratorBis
Source Code Management

Source Code Management

https://github.com/Oliver-Loeffler/UndecoratorBis.git

Download undecorator

How to add to project

<!-- https://jarcasting.com/artifacts/net.raumzeitfalle.fx/undecorator/ -->
<dependency>
    <groupId>net.raumzeitfalle.fx</groupId>
    <artifactId>undecorator</artifactId>
    <version>0.1.0</version>
</dependency>
// https://jarcasting.com/artifacts/net.raumzeitfalle.fx/undecorator/
implementation 'net.raumzeitfalle.fx:undecorator:0.1.0'
// https://jarcasting.com/artifacts/net.raumzeitfalle.fx/undecorator/
implementation ("net.raumzeitfalle.fx:undecorator:0.1.0")
'net.raumzeitfalle.fx:undecorator:jar:0.1.0'
<dependency org="net.raumzeitfalle.fx" name="undecorator" rev="0.1.0">
  <artifact name="undecorator" type="jar" />
</dependency>
@Grapes(
@Grab(group='net.raumzeitfalle.fx', module='undecorator', version='0.1.0')
)
libraryDependencies += "net.raumzeitfalle.fx" % "undecorator" % "0.1.0"
[net.raumzeitfalle.fx/undecorator "0.1.0"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

A fork of UndecoratorBis

In 2014 Arnaud Nouard created a newer version of his JavaFX window decoration API called Undecorator with a focus on transparency and non-rectangular window support.

As I really like the chosen approach and the API is released with a BSD-2-Clause license, I will try to continue development.

The project does not yet work with Java 9 or later out of the box. For now still Java 8 is required. To run tests and build:

$ ./gradlew clean check jar

Skins

The first steps are:

  • update the Gradle build to work with Gradle 5.2.1 or newer ๐Ÿ‘
  • enable Gradle Wrapper ๐Ÿ‘
  • Publish version 0.1.0 on https://search.maven.org ๐Ÿ‘
  • Introduce concept of themes. ๐Ÿ‘
  • Expose titleProperty to re-enable use of bindings ๐Ÿ‘
  • Add basic tests with JUnit 5 and TestFX ๐Ÿ‘
  • Add a new theme called WXflat ๐Ÿ‘
  • Uses SVG Paths for Icons - no extra dependency used for FontAwesome ๐Ÿ‘
  • Make fullscreen optional and configurable (permit and deny fullscreen)
  • Make fullscreen button animation optional and configurable
  • Make window resize handle in lower right optional
  • Replace theme properties with CSS and consider removing the properties code
  • Add option to place client fxml into a dedicated area (pane) in decoration (e.g. right now the decoration overlaps the client content but in some cases this is not wanted)
  • Make stage transparency working with WXFlat
  • Make the project work with Java 11 and JavaFX 11
  • Add Ubuntu-like and OSX-like skins
  • Add description on how Themes work, describe all style classes, all fx:ids and their purpose, how things work together.

Well, he would like to see more screenshots of apps built using UndecoratorBis, this will happen. I have already implemented 2 new themes and will share screens of them soon. A demo app for WXFlat has been added recently.

The reason why I'd like to publish this one on https://search.maven.org is, that the environment where UndecoratorBis will be used, does not support other repositories than search.maven.org.

License

Copyright (c) 2014-2016, in-sideFX All rights reserved.

BSD License All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the In-SideFX nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Release Notes

0.1.0

Versions

Version
0.1.0