Skip to content

J-Almeida/weblaf

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebLaF

WebLaf is a Java Swing Look and Feel and extended components library for cross-platform applications.
Preview

Advantages

  • Simple and stylish cross-platform default theme
  • Lots of useful custom Swing components
  • Fully stylable through settings, painters and custom skins
  • Language, settings, hotkey, tooltip and other custom managers
  • Various Swing and general utilities for many possible cases
  • Full support for RTL components orientation

You can find more information about the library on official site:
http://weblookandfeel.com

Custom components

Here are some screenshots of the custom WebLaF components:

WebTristateCheckBox
Tristate checkbox

WebLinkLabel
Link label

WebCollapsiblePane
Collapsible pane

WebAccordion
Accordion

WebDateField and WebCalendar
Date field and calendar

WebMemoryBar
Memory bar

WebBreadcrumb
Breadcrumb with custom content
Breadcrumb with toggle buttons

WebFileTree
Asynchronous file tree

WebColorChooserField
Color chooser field

WebGradientColorChooser
Gradient color chooser

WebStepProgress
Step progress

You can find a lot more live examples in the demo application!

Important

With v1.27 update core StyleManager functionality was added and implemented in a few WebLaF components so the way they act might differ from what you got used to. You might want to read here about features that StyleManager brings.

I will also be adding more articles into GitHub WIKI from now on, so you can find information about various WebLaF features there.

Artifacts

You can always find all WebLaF artifacts in the "releases" section:
https://github.com/mgarin/weblaf/releases

Here are the direct links for the latest release:

  1. weblaf-1.27.jar - library jar
  2. weblaf-simple-1.27.jar - library jar without dependencies
  3. weblaf-src-1.27.zip - project sources zip
  4. weblaf-demo-1.27.jar - executable demo jar
  5. weblaf-javadoc-1.27.zip - JavaDoc zip
  6. ninepatch-editor-1.27.jar - executable 9-patch editor jar

Roadmap

You can always check what fixes, features and improvements are coming by checking the milestones page:
https://github.com/mgarin/weblaf/issues/milestones I am not updating them very frequently, but they actually represent features I want to focus on.

Updates

New WebLaF versions appear approximately every month.

Sometimes it might take less time if there are some small but critical issue fixes, sometimes it might take more time if I am going to release some large feature (like it was with StyleManager) as I have to modify/add a lot of code and consider a lot of stuff.

In any case WebLaF is not going to disappear anytime soon. Hopefully Swing won't disappear or become deprecated soon as well.

Building

To build various WebLaF artifacts you will need Java 1.6 update 30 or any later including Java 7 and 8 and [Apache ANT] (http://ant.apache.org/).
Simply run ant command within the "build" library folder to build all artifacts at once.

Here is a full list of usable ANT targets in WebLaF build script:

  1. build.artifacts default target, build all artifacts at once
  2. build.weblaf.jar weblaf-x.xx.jar - build WebLaF binary
  3. build.weblaf.simple.jar weblaf-simple-x.xx.jar - build WebLaF binary without dependencies
  4. build.sources.zip weblaf-src-x.xx.zip - build WebLaF sources zip archive
  5. build.npe.jar ninepatch-editor-x.xx.jar - build 9-patch editor application
  6. build.weblaf.demo.jar weblaf-demo-x.xx.jar - build WebLaF demo application
  7. build.javadoc weblaf-javadoc-x.xx.zip & javadoc - create zipped and unzipped library JavaDoc
  8. run.npe build and run ninepatch-editor-x.xx.jar - 9-patch editor application
  9. run.weblaf build and run weblaf-x.xx.jar - library information dialog
  10. run.weblaf.demo build and run weblaf-demo-x.xx.jar - demo application

Example Usage

To install WebLaF you can simply call install() or use one of standard Swing L&F set methods:

public class UsageExample
{
    public static void main ( String[] args )
    {
        // You should work with UI (including installing L&F) inside Event Dispatch Thread (EDT)
        SwingUtilities.invokeLater ( new Runnable ()
        {
            public void run ()
            {
                // Install WebLaF as application L&F
                WebLookAndFeel.install ();

                // You can also do that using standard Swing methods:
                // UIManager.setLookAndFeel ( new WebLookAndFeel () );
                // UIManager.setLookAndFeel ( "com.alee.laf.WebLookAndFeel" );
                // UIManager.setLookAndFeel ( WebLookAndFeel.class.getCanonicalName () );

                // Create you application here using Swing components
                // JFrame frame = ...

                // Or use similar WebLaF components to use extended features
                // WebFrame frame = ...
            }
        } );
    }
}

Feedback

I would really appreciate if you will post any found bugs in issues section here, on GitHub.
You can also post them on the library official site forum, but that would require registration.
And, as always, you can send any feedback directly to my email: mgarin@alee.com

About

WebLaF - Java Look and Feel library for cross-platform Swing applications

Resources

Stars

Watchers

Forks

Packages

No packages published