5 Replies Latest reply: May 12, 2013 1:20 PM by csh RSS

    ControlsFX vs UI Controls Sandbox vs JFXtras!?


      I'm getting confused by all those little JavaFX controls projects out there:




      And then there's also http://www.javafxdata.org/

      Why can't there be one?

      I thought about contributing some code or ideas to such projects here and there, but never understood how it works with the source control systems. It seems some use Git, some use Mercurial. Unfortunately I don't have any experience with both and it always discourages me to begin with.
      And there's also bitbucket and github. Never really worked with it. I also don't really understand what happens with my pull requests. Is there a super visor who would check my code and accept it or who else is responsible for the code quality?
        • 1. Re: ControlsFX vs UI Controls Sandbox vs JFXtras!?
          Jonathan Giles-Oracle
          It is the nature of large projects (like JavaFX) that multiple projects spring up around it to 'fill in the blanks'. Curiously, all four of the projects you list are projects I'm involved in to varying degrees (I support JFXtras behind the scenes, and I started DataFX, the UI controls sandbox and ControlsFX). Asking for there to be only one project is like asking for there to be only one operating system....it just won't happen (and nor should it) :-)

          Joining an open source project depends on the itch you want to scratch, the people you want to work with, and the skills you have. To summarise the four projects you list, I would say:

          * Ignore the UI controls sandbox, that is for Oracle employees (for now).
          * ControlsFX and JFXtras are much the same, just with different people behind them. In the past I've always suggested people contribute to JFXtras, and despite ControlsFX being 'my' project, that advice still stands. Either of these projects would suit if your interest is in writing UI controls, etc.
          * DataFX is more focused on connecting JavaFX with outside data sources, and is another project I'm involved in. However, there are only three of us in that project and we have a rather large vision, so joining in there may be a steeper learning curve. Nonetheless, if your interest is in data sources, etc then DataFX is the project for you.

          On the other hand, getting to know version control systems like Git and Mercurial is very useful, as well as learning about websites like GitHub and BitBucket. In my case, I've chosen to focus on mercurial and bitbucket, but each to their own.

          Hope that helps.
          • 2. Re: ControlsFX vs UI Controls Sandbox vs JFXtras!?
            It seems some use Git, some use Mercurial
            Generally the github based projects use git and the bitbucket ones mercurial, though either hosting provider accepts projects that use both version control systems.
            You can create your own account on one of these systems to set up your own project there for practice.
            Then you will have more confidence when you want to request to push a change to an established project.

            To learn how to use Mercurial and also some of the concepts behind distributed version control I recommend following the tutorial at:

            To work with git and github, follow githubs introductory tutorials:

            Mercurial and git may seem a bit intimidating, but they are not all that difficult once you start working with them.

            A tool like tortisehg (http://tortoisehg.bitbucket.org/) can make working with mercurial just an extension of a file explorer shell.
            I use intellij idea and if you are used to how that tool works with subversion, using it to work with git or mercurial is very similar (and is my preferred method of interacting with version control systems - including remote github hosted repositories).
            I also don't really understand what happens with my pull requests. Is there a super visor who would check my code and accept it or who else is responsible for the code quality?
            • 3. Re: ControlsFX vs UI Controls Sandbox vs JFXtras!?
              I did see someone post a link to a project for the UI Sandbox though, which I downloaded yesterday before seeing the Controls FX. I like JFXTras, but it's a little buggy, going to check out the ControlsFX and see how that goes.

              Marco Jakob
              October 29, 2012 at 6:06 pm
              I really needed the simple JavaFX Dialogs for teaching a programming course. Thanks for opening up the repository, Jonathan!

              To provide an easy way to use JavaFX Dialogs with JavaFX 2.2 I created a jar file with all the necessary files. See the GitHub repo at https://github.com/marcojakob/javafx-ui-sandbox and the instructions in this blog post: http://edu.makery.ch/blog/2012/10/30/javafx-2-dialogs/

              I had to fix some bugs, especially in the input dialog, to make it work.

              This might be a start. But we will still need a repo where changes made to the sandbox-8 could easily be merged into. Any ideas?


              By the way what exactly are the repositories? It's just a place to upload code and be a part of projects and such? I love to help out and contribute, but I'm pretty new to all of these sites, so any info would be awesome!

              I would also love to know more about DataFX, sounds really cool, and something I will most likely need in my upcoming project!! Thanks a lot for all of the info both JSmith and Jonathan G
              • 4. Re: ControlsFX vs UI Controls Sandbox vs JFXtras!?
                KonradZuse wrote:
                I like JFXTras, but it's a little buggy
                We would really appreciate if you would let us know of any bugs you find. I personally try to fix bugs in my little part of JFXtras within a couple of days. Do note that JFXtras labs is intended for experimenting, so that can be buggy yes. I'm at the point where some things, like the ListSpinner and CalendarPickers, will be moved to the formal JFXtras release.
                • 5. Re: ControlsFX vs UI Controls Sandbox vs JFXtras!?
                  Thanks for clarification.

                  @tbee: I also have the feeling JFXtras is a little buggy.
                  The https://github.com/JFXtras/jfxtras project is actually nearly empty.
                  And the labs project looks as if it contained too many unfinished and experimental classes, althouh I really can't judge it. But e.g. GridView.java is completely undocumented.
                  Lately I tested BigDecimalField and it was nearly useless. At least I couldn't get it work properly (Pressing the buttons often has no effect).

                  I also don't like classes like jfxtras.labs.scene.layout.HBox, which harms more than it benefits (imo), due to more API and therfore more confusion. Saving 2 lines of code isn't really worth it imo.

                  Having unfinished or experimental code is ok. But who decides which code is ok for a release in Open Source projects?

                  If I contributed some code, is there someone who will test it sufficiently? Who makes the quality ensurance in such projects?

                  Edited by: csh on 12.05.2013 11:15