Giter Club home page Giter Club logo

esox's Introduction

Build Status (Travis CI) Maven Central

Esox Java Swing binding library

Binds model values to Swing components using the observable pattern and Java reflection.

1. What it does

Synchronize value changes between model and Swing components. A change of a model value updates the Swing component and a value entered in a Swing component updates corresponding value in the model. The library also handle the case where a Swing UI should show the absence of a model. A case very common in a master-detail UI when no master is selected.

The binding is defined by creating instances of objects called AspectAdapter that takes constructor arguments to define the binding. The binding is defined without any reference to a model instance and can therefore be located in the Swing component constructor. Once the Swing component is created it can handle different model instances with the same binding definition.

2. The purpose of the project

The library is developed by my friend Dennis and adapted to Maven conventions by me.

The purpose of this GitHub project is to provide documentation and stable releases as Maven dependencies to current users of the library. There will be no extensive further development but some minor improvements will be implemented over time. There are no plans to support JavaFx that has its own solution for binding.

But if you still fancy Java Swing and need a binding library give it a try. The library are successfully used in several in-house applications.

3. Documentation

Because the library uses certain concepts that differ from most other MVC implementations, you get the most out of it by reading the documentation.

You can also have a look at the fish and esox-account module that uses the library for fully functioning examples.

esox's People

Contributors

goranstack avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.