Skip to content

Tags: mobius3/tweeny

Tags

v4.1.0

Toggle v4.1.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Add easing::byName for runtime easing selection (#51)

* Add easing::byName for runtime easing selection by name

* Document easing::byName for runtime easing selection in the manual

v4.0.0

Toggle v4.0.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
The Great Rewrite (#49)

* remove string-based `via` overloads for easing

* remove enum-based `via` overloads for easing

* simplify `via` method templates and adjust type usage

* remove unnecessary `inline` specifiers from tween template methods

* use nested namespace syntax for `tweeny::detail`

* remove `enumerated` easing enum from easing class

* update easing implementations, simplify logic and adopt modern C++ features

* refactor: remove redundant `inline` specifiers, adopt `const` for parameters, and simplify template methods

* use nested namespace syntax for `tweeny::detail` in int2type header

* simplify `easingresolve` implementation and adopt modern C++ syntax

* adopt modern C++ features in tween class templates

Refactored to use `const`, removed redundant `inline`, and simplified methods.

* adopt modern C++ features in tweenpoint templates

Changed to use `const`, `constexpr`, and `nodiscard`,
simplified method implementations and adopted nested namespace syntax.

* adopt modern C++ features in traits and header

Simplified `equal` struct, replaced `std::is_same` with `std::is_same_v`, and updated template parameter syntax.

* use modern CMake features and enforce C++17 standards

Updated `CMakeLists.txt` to enforce C++17, replaced custom C++11 feature flags with `cxx_std_17`, and utilized namespaced target aliases. Enhanced scripts to utilize modern CMake practices, improved Python/quom checks, and updated installation/export configurations.

* add testing infrastructure with Catch2

Enabled testing setup via CMake with `TWEENY_BUILD_TESTS` option. This includes integration of Catch2 v3, a basic sanity test, and configuration for automatic test discovery.

* refactor: rename `stacked` to `start`, add time-based seek overload

Replaced `stacked` with `start` across the tween and tweenpoint classes for clarity and consistency. Added an overload for `seek` to support `uint32_t` time-based arguments. Extended tests to cover new functionality and ensure correctness.

* The great refactoring

* enhance precision, modernize methods, and enforce strict warnings

* use lambda for `return_value` logic in `interpolate`

* add `seek` and `jump` methods to `tween`

* add multiple easing functions as individual headers

* make `step`, `jump` and `seek` independent of each other

* add an event system with step listener support

Introduced an `event` namespace with the ` step_t ` type and accompanying response enum. Enhanced `tween` class with `on()` for registering `step` listeners. Updated internal `step` logic to trigger callbacks and added tests to validate `step` events.

* add `seek` and `jump` event listener support

* unsubscribe support for event listeners

* improve builder with compile-time safety, preventing `build()` without `to()`

* update tween constructor and reorder frame updates

* clean up redundant line and correct spacing in headers

* add `peek` and `progress` methods to `tween`

* move easing files to detail namespace

* remove non-const `render` method from `tween`

* migrate easing definitions to tweeny/easing.h

* document tweeny.h

* add complete event listener and update callbacks

* migrate tests into categorized directories

* update cmake target sources

* add keyframeEnter and keyframeLeave events

* reorganize project structure and bump version to 4.0.0

* update include paths to match new project structure

* document tweeny::easing namespace and its purpose

* document backIn, backOut, and backInOut easing functions

* document bounceIn, bounceOut, and bounceInOut easing functions

* document circularIn, circularOut, and circularInOut easing functions

* document cubic, elastic, and default easing functions

* document elasticInOut, exponentialIn, and exponentialOut easings

* document exponentialInOut, linear, and quadratic easings

* document quarticIn, quarticOut, and quarticInOut easings

* document quinticIn, quinticOut, and quinticInOut easings

* document sinusoidalIn, sinusoidalOut, sinusoidalInOut, and stepped easings

* establish mainpage, update input paths, and refine doxygen layout

* update manual and examples to reflect builder pattern

* add links to visualize easing functions at easings.net

* clarify manual wording and improve formatting for consistency

* update event documentation and clarify usage examples

* add update event type, tests, and handlers

* add v3-to-v4 migration guide and update documentation

* update link text for easing visualizations in mainpage doc

* remove sandbox example code and adjust CMake configuration

* update copyright notice

* use quom directly from uvx

* dedupe license header from single-header target

* adjust dox return_values to be unique

* update readme to 4.0.0 and backup old readme

* update docs and changelog

* Fix CMake install layout so find_package works again.

* add custom Doxygen styling and fonts for documentation

* update Doxygen styling to match tweeny-gh-pages theme

Added light/dark color schemes, updated layout styles, fonts,
and improved element spacing for consistency.

* match Doxygen font styles with landing page

* add easing function precomputed reference values for tests

* add linear easing unit test

* handle edge cases in exponential easing functions

* add unit tests for cubic, quadratic, quartic, quintic, sinusoidal, and exponential easings

* add circular easing unit tests

* add elastic easing unit tests

* add back and bounce easing unit tests

* remove swing easing reference values

* remove sandbox target from build system

* update documentation with new event system details

* expand README with update event example and details

* update documentation with during(0U), progress, and update event

* document `event::update` for position changes

* add tween-based unit tests for linear and quadratic easings

* rename parameters for clarity in tweeny_builder and from functions

* add tween-based unit tests for quintic, sinusoidal, exponential, circular, cubic, and quartic easings

* add tween-based unit tests for back and bounce easings

* add tween-based unit tests for def and stepped easings

* ensure seek, step, and jump behavior match peek across easings.

* add CI workflow with tests on push and pull requests

* update CMake install and expand README with usage details

* add release script

* update changelog for recent fixes, tests, and docs improvements

v3.2.1

Toggle v3.2.1's commit message
update version and copyright dates

pre-4.0

Toggle pre-4.0's commit message
add RFC note to README

v3.2.0

Toggle v3.2.0's commit message
Version 3.2.0

v3.1.1

Toggle v3.1.1's commit message
Version 3.1.1

- Remove unused CMake options
- Adds a single-header generator

v3.1.0

Toggle v3.1.0's commit message
Version 3.1.0:

- From now on, tweeny will be using a more traditional versioning scheme
- Remove some extraneous semicolons (@Omegastick)
- Adds `easing::stepped` and `easing::def` for arithmetic-like values (@ArnCarveris)
- Fix point progress calculation in multi-duration tweens (#15)
- Fix deduction of same-type values (#14)
- Use `auto` to deduce return values of operations inside various easings

v3

Toggle v3's commit message
Version 3

2

Toggle 2's commit message
Update CHANGELOG.md

1

Toggle 1's commit message
More CSS adjustments