Last updated January 02, 2012 07:55, by Michael Bar-Sinai
Feedicon  

Recent Updates
  • NEW Added Panel Post Processors, allowing for customizing built panels without referencing them.
  • PanelMatic is now Dual licensed: APLv2 and GPL, so everyone can use it now (hopefully).
  • Geertjan Wielenga, Principal Product Manager in the Oracle Developer Tools, refers to PanelMatic in his blog.

What is this project?

PanelMatic is a library that allows building common UI panels easily. PanelMatic was built with this in mind:

  • Have a simple and intuitive connection between how the code and the UI are laid out
  • Allow modifying existing UI easily
  • Have sensible defaults, i.e. no customization necessary for most projects
  • Allow for easy customizations (e.g. to get that corporate look)
  • Internationalization, including RTL support
  • Allow for full implementation change with no change in the client code (like JPA)
  • Use design-time validations (i.e. not parsing strings at runtime)
  • Make panel creation an expression rather than a bunch of statements (Allows for functional-style UI creation)
  • Find a valid use case for varargs, which is not related to printf()

Simple Example

This:

createComponents(); // or however you create your components
PanelMatic.begin()
	.addHeader(HeaderLevel.H1, "User Data")
	.add( "Name", txfName )
	.add( "Username", txfUsername )
	.add( "Password", txfPassword )
	.add( cbIsAdmin )
	.add( btnOk, Modifiers.L_END, Modifiers.P_FEET, Modifiers.GROW )
	.get();

Would get you this panel:

What else is here?

  • Mysql
  • Glassfish
  • Jruby
  • Rails
  • Nblogo
Terms of Use; Privacy Policy;
© 2010, Oracle Corporation and/or its affiliates
(revision 20120518.3c65429)
 
 
Close
loading
Please Confirm
Close