Doesn't seem like that are any more opinions. How do you want to proceed? On Tue, Apr 27, 2021 at 2:45 AM Kevin Rushforth <kevin.rushfo...@oracle.com> wrote:
> I would lean towards the simpler solution that Nir has proposed. I would > like to be informed by what application developers want. > > -- Kevin > > > On 4/26/2021 2:03 PM, Marius Hanl wrote: > > I'm fine with either way. > > Both approaches are nice, while the factory/builder approach will > > probably be a bit better as it will cover more use cases, but of > course > > takes a bit more time. > > In any case we can create a Border/Background very easily and both > are > > quite short, the factory/builder approach will be shorter though. > > > > e.g. > > setBorder(new Border(new BorderStroke(Color.BLACK, > > BorderStrokeStyle.SOLID))); > > setBorder(BorderFactory.createSolidBorder(Color.BLACK)); > > > > > > Gesendet: Sonntag, 25. April 2021 um 13:05 Uhr > > Von: "Nir Lisker" <nlis...@gmail.com> > > An: mariush...@web.de > > Cc: "openjfx-dev@openjdk.java.net Mailing" > > <openjfx-dev@openjdk.java.net> > > Betreff: Re: Convenience factories for Border and Background > > > > I think a minimal constructor would be a nice first step. > > > > > > I want to avoid adding more constructors, so factory methods would be > > my go-to. > > > > We may can go further from that and create something similar like > > the BorderFactory > > > > > > A factory class or a builder require a whole new class and solves the > > problems of wanting to create many combinations of constructor > > arguments. So we have to ask ourselves if using the full and complex > > constructor for complex cases, and the simple proposed methods for > the > > simple cases is enough, or if there is enough middleground of > > combinations that we need a more advanced solution. > > > > > > On Sat, Apr 24, 2021 at 7:24 PM <[1]mariush...@web.de> wrote: > > > > Hi Nir, > > this is a really good idea and something I want to see since the > > first > > time I used to set a Background/Border. > > I think a minimal constructor would be a nice first step. > > So instead of: > > - setBackground(new Background(new BackgroundFill(Color.BLACK, > > CornerRadii.EMPTY, Insets.EMPTY))) > > -> setBackground(new Background(new > BackgroundFill(Color.BLACK))) > > and: > > - setBorder(new Border(new BorderStroke(Color.BLACK, > > BorderStrokeStyle.SOLID, CornerRadii.EMPTY, > > BorderStroke.DEFAULT_WIDTHS))) > > -> setBorder(new Border(new BorderStroke(Color.BLACK, > > BorderStrokeStyle.SOLID))) > > We may can go further from that and create something similar > like > > the > > BorderFactory class in swing, where you can create a lot of > > different > > borders easily. (Same to Background) > > Reference: > > > > [1][2] > https://github.com/openjdk/jdk/blob/master/src/java.desktop/sh > > are/cl > > asses/javax/swing/BorderFactory.java > > - Marius > > Gesendet: Donnerstag, 22. April 2021 um 15:45 Uhr > > Von: "Nir Lisker" <[3]nlis...@gmail.com> > > An: "[4]openjfx-dev@openjdk.java.net Mailing" > > <[5]openjfx-dev@openjdk.java.net> > > Betreff: Convenience factories for Border and Background > > Hi, > > Many times when I want to create a simple solid Background or > > Border, > > it is > > quite a hassle because of the configurability these classes > have: > > new Border(new BorderStroke(Color. BLACK, > > BorderStrokeStyle.SOLID, > > null, > > null)); > > new Background(new BackgroundFill(Color.BLACK, null, null)); > > I was thinking of adding convenience factory methods > > Border.of(Paint stroke), or Border.stroke(Paint stroke) > > Background.of((Paint fill), or Background.fill(Paint fill) > > I was wondering if others would like this, or is everyone using > > CSS > > anyway? > > - Nir > > References > > 1. > > [6] > https://deref-web.de/mail/client/sT3TQpQ3T6k/dereferrer/?redirect > > > Url=https%3A%2F%2Fgithub.com%2Fopenjdk%2Fjdk%2Fblob%2Fmaster%2Fsrc%2 > > > Fjava.desktop%2Fshare%2Fclasses%2Fjavax%2Fswing%2FBorderFactory.java > > > > References > > > > 1. mailto:mariush...@web.de > > 2. > https://github.com/openjdk/jdk/blob/master/src/java.desktop/share/cl > > 3. mailto:nlis...@gmail.com > > 4. mailto:openjfx-dev@openjdk.java.net > > 5. mailto:openjfx-dev@openjdk.java.net > > 6. > https://deref-web.de/mail/client/sT3TQpQ3T6k/dereferrer/?redirectUrl=https%3A%2F%2Fgithub.com%2Fopenjdk%2Fjdk%2Fblob%2Fmaster%2Fsrc%2Fjava.desktop%2Fshare%2Fclasses%2Fjavax%2Fswing%2FBorderFactory.java > >