• Post Reply Bookmark Topic Watch Topic
  • New Topic

Java Date Picker component (LGoodDatePicker)  RSS feed

 
Blake Taric
Greenhorn
Posts: 4
1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello, I'd like to announce a good Java date picker swing component, in the hopes that other programmers here will find it useful.

It is called LGoodDatePicker. A list of features is below. There are screenshots and an executable demo jar at the GitHub site. The package is relatively new, so your comments and criticisms would be welcome.

Warm regards,
BlakeTNC

https://github.com/LGoodDatePicker/LGoodDatePicker

General features:

Automatic internationalization. (Month names, weekday names, the default first day of the week, default date formats, and button text.)
Translations so far include 12 languages.
Fonts and colors can be changed. (For example the highlight color, or the invalid date font).
Uses the standard Java 8 time package. This package is also called "java.time" or "JSR-310"
Automatic validation of dates, whether entered with the mouse or keyboard.
Optional highlight policies and veto policies.
Relatively compact source code (3 main classes).
Simple usage. Creating a DatePicker requires only one line of code.
Working demo program. (The demo Jar can be downloaded from the Github page release files.)
Code and usage examples.
Complete Javadoc documentation.
Open source license.

 
Campbell Ritchie
Marshal
Posts: 55783
164
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to the Ranch and thank you for producing that product. How does it compare with Tödter's older date picker?
 
Blake Taric
Greenhorn
Posts: 4
1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello, and thank you.

I am much more familiar with the other modern date pickers competitors than the Tödter JCalendar, so I can only give "first impressions". I had previously heard of JCalendar. (And I have read its website.) I imagine that every programmer has different acceptance criteria, and this particular component never quite made my "radar" for the amount of interest required to try using it in a project. Someone who's used the JCalendar in their own software would be more versed on its particular advantages and disadvantages. (The date choosers which I have personally evaluated include JDatePicker, Microba DatePicker, and JXDatePicker.)

I'm looking it over right now, and I (think) I can see a few obvious differences. Please correct me if I'm wrong about any of them. In summary, I'd say that LGoodDatePicker takes advantage of many technologies that were not available when the Tödter product was created, but those same technologies are now considered "best practice" (and frankly hard to live without) by a significant subset of programmers who have to deal with date and time programming.

Subjective differences:
* Aesthetic appeal is subjective. However, I have an impression that both LGoodDatePicker, and the other commonly used date pickers, may have an aesthetic advantage. (Possibly a "sleeker" look.)
* Developer interest and popularity is also hard to measure, but my impression is that the competitors of the the Tödter product are more widely used. For example, the number of forks of a project can be seen as a measure of developer interest. As of this writing, Tödter JCalendar has been on Github from 2011 to 2016, but it currently has 1 fork. For comparison, JDatePicker has 27 forks. Microba DatePicker has 5 forks.

Objective differences:
* Different navigation design: I personally prefer forward and back month/year buttons, to using spinner fields for the same purpose.
* Modern time library standards: Tödter uses java.util.Date, which was the standard at the time it was created. LGoodDatePicker uses Java.time.LocalDate, which is a class in the new standard time package which was released with Java 8 (also called JSR-310, and based on Joda Time). The new Java 8 packages are generally acknowledged as major improvements in date and time handling methodology. The time package differences are beyond the scope of my reply, but a quick internet search on the topic would give an idea of how big a deal this has been for developers.
* Modern project standards: LGoodDatePicker uses Maven to build its project. The Tödter download file is shipped as "bare" source code. Considering the number of classes that it has, this slows down any programmer who wants to build the project themselves, or to contribute to the project.

I have an appreciation for any developer who takes the time to create an open-source package! I'm glad that things like the Tödter JCalendar were created, because they have filled, and continue to fill, a large developer and software user need.

Warm regards,
Blake

 
Paul Clapham
Sheriff
Posts: 22521
43
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Interesting... I just updated my application to use Java 8 date and time classes, but then I have to interface with the legacy date format (java.util.Date) used by my calendar selector. Which I got from IBM about 10 years ago and don't have the source code for. In fact when I googled it just now, all of the posts are more like 15 years old. It still works (that's Java for you) but I should look into something new anyway so I'm going to have a look at your component.
 
Blake Taric
Greenhorn
Posts: 4
1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello Paul,
I hope you enjoy it. I would appreciate any feedback, suggestions, or bug reports you may have.
I can be reached using this email form. (You could also use a CodeRanch.com PM, or create a new new issue at LGoodDatePicker Github.)

Warm regards,
Blake
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!