Skip to content

Releases: carldea/cognitive

v1.6.1

06 Aug 03:21

Choose a tag to compare

This fixes an issue when users call reset() or save() on a view model. When using a ComboBox control there is the items property and the value property. when a view model populates the combobox, these items should be ignored during save() and reset() operations.

The following methods perform copies. However with the option to skip will ignore copies between layers.

  • save() is responsible for copying the property values into the model values layer.
  • reset() is responsible for copying the model values layer back into the property values layer.

v1.6.0

08 Jul 00:49

Choose a tag to compare

What's Changed

  • #13 Refactor for Type safe improvements.
  • #14 Added the maven release plugin to help automate releases.

Full Changelog: release/1.5.1...release/1.6.0

v1.5.1

12 Nov 02:34

Choose a tag to compare

Maintenance release to update logging dependencies to be in test scope.

v1.5.0

31 Oct 02:42

Choose a tag to compare

What's Changed

  • #11 New support for adding a runnable code block to a view model's properties that change.

Here are new features to simplify code in certain scenarios.

  • Updating the view model after JFXNode object is FXML loaded. JFXNode's updateViewModel() method.
  • Getting the view model after JFXNode object is FXML loaded. JFXNode's getViewModel() method.
  • Running a code block when a property has changed. ViewModel's .doOnChange() method.
  • Validate on change runs validators based on a property change. ViewModel's
  • Determine if Form is invalid. The ValidationViewModel's onInvalid() method.
  • Determine if Form is valid. ValidationViewModel's onValid() method.

Full Changelog: release/1.4.0...release/1.5.0

v1.4.0

18 Oct 06:09

Choose a tag to compare

New support to get properties as a JavaFX property based on common datatypes such as the following:

if (myViewModel.getIntegerProperty(AGE).isLessThan(50)) {
   System.out.println(" you are %s years young!".formatted(myViewModel.getIntegerProperty(AGE).getValue()));
};

Prior we only had getProperty(AGE) where you could not compare the value in an if statement (inline) like above.

IntegerProperty ageProp = myViewModel.getProperty(AGE);
if (ageProp.isLessThan(50)) {
   System.out.println(" you are %s years young!".formatted(ageProp.getValue()));
};

v1.3.0

04 Sep 04:36

Choose a tag to compare

What's Changed

  • Correct a little typo error in README by @RealThanhpv in #5
  • #6 Feature to support multiple validation messages. by @carldea in #7
  • #8 feature to support for Enum property lookups, slf4j, junit5, and began tests by @carldea in #8

New Contributors

Full Changelog: release/1.1.0...release/1.3.0

v1.2.0

06 Aug 00:30

Choose a tag to compare

What's Changed

  • Feature/6 New support for validators allowing multiple validation messages by @carldea in #6

Contributors

Full Changelog: release/1.1.0...release/1.2.0

v1.1.0

28 Jun 18:52

Choose a tag to compare

What's Changed

  • Feature/2 property identifier concept oriented db by @carldea in #3

New Contributors

Full Changelog: release/1.0.0...release/1.1.0

v1.0.0

30 May 22:22

Choose a tag to compare

Intro

This is the initial release of cognitive v1.0.0. Cognitive is a lightweight framework based on the MVVM UI architectural design pattern.

Features

  • Dependancy injection of ViewModels into controller classes.
  • A simple view model to maintain a state of a form UI
  • A validation view model supporting validators
  • Check for error, info and warning type messages.

TODOs

  • Bean view model
  • Validation bean view model
  • Ability to apply error messages to validation overlay icons on UI controls
  • Clean up documentation
  • Think about an overloaded save() method receiving a consumer allowing caller to provide code to execute if validation fails and code when validation succeeds.