cgarbs-javalib
about
My own Java framework, mostly a Model-View-Binding for Swing.
The project homepage is at https://github.com/mmitch/cgarbs-javalib
features
Current features are:
- define data models containing fields of different types (text, numerals etc.)
- define simple validations for the fields (minimum/maximum text lengths, minimum/maximum values, null/notnull)
- generate Swing widgets that are bound to the data model fields (mostly TextFields, but there is more: a color picker, CheckBoxes)
- grouping of widgets
- different layouts for the widgets (single/dual columns, tabbed, ...)
- move data between the GUI and the model via method call
- validate the model showing errors directly in the GUI widgets (eg. "text too long")
- store/load the whole model to/from a file
- i18n/l10n support for labels and error messages
dependencies
-
for using the framework in your projects:
- at least Java 6
-
for building:
- Gradle build environment
- bash and perl for extended build tools (both optional)
repository
To use cgarbs-javalib in your own Gradle project, use this:
repositories {
maven {
url "https://www.cgarbs.de/maven2/"
}
}
dependencies {
compile 'de.cgarbs:cgarbs-javalib:0.2.0'
}
Adjust the version number accordingly, this is just an example. Maven users should also be able to use this repository, but I don't know the maven syntax for that.
examples
Take a look at my knittr project for a real-world example of how to use this framework.
building with Gradle
Building via build.gradle
should be straightforward.
There are some additional build targets available:
-
version
shows the current version number that would be used when invoking thepublish
target -
fixit
runs a bash script to fix line breaks and indentation on empty lines. -
checkl10n
checks the .property files for missing translations -
publishDropbox
copies the generated jar my Dropbox to sync it to my wife's computer - this propably is of no use to you :-)
copyright
cgarbs-javalib - my own Java framework, mostly a Model-View-Binding for Swing
Copyright (C) 2015 Christian Garbs mitch@cgarbs.de
Licensed under GNU GPL v3 (or later)
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.