Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ThatLousyGuy/Monolith
https://github.com/ThatLousyGuy/Monolith
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/ThatLousyGuy/Monolith
- Owner: ThatLousyGuy
- License: mit
- Created: 2015-09-11T06:00:49.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2015-09-24T08:45:15.000Z (about 9 years ago)
- Last Synced: 2024-07-02T10:14:35.027Z (4 months ago)
- Language: C#
- Size: 172 KB
- Stars: 21
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-uwp - Monolith - Monolith is a Windows library that lets you create animations in codebehind in a fluent, somewhat straightforward manner. It's a wrapper around the Windows.UI.Xaml.Media.Animation library that removes as much of the setup as possible. (UI Library)
README
## Monolith
Monolith is a Windows library that lets you create animations in codebehind in a fluent, somewhat straightforward manner. It's a wrapper around the Windows.UI.Xaml.Media.Animation library that removes as much of the setup as possible.
## Examples
using Lousy.Mon;
// Create an ease for use with animations later
ExponentialEase ExpEaseOut =
new ExponentialEase() { EasingMode = EasingMode.EaseOut };// Animate a UIElement along the X axis from 0 to 40
Oli.MoveXOf(uiElem).From(0).To(40).For(0.3, OrSo.Secs).Now();// Rotate UIElement to 90 degrees
EventToken rotating =
Oli.Rotate(uiElem).To(90).For(0.3, OrSo.Secs).With(ExpEaseOut).Now();
// Fade the opacity to 0 after the rotation finishes
Oli.Fade(uiElem).To(0).For(0.3, OrSo.Secs).With(ExpEaseOut).After(rotating);// Run arbitrary code after the rotation too!
Oli.Run(() =>
{
// Do things here!
}).After(rotating);## Setup
### Use Monolith in your project
Check out [Monolith on NuGet](https://www.nuget.org/packages/Monolith/)!PM> Install-Package Monolith
### Use and extend Monolith
- Clone this git repo and include the .csproj file in your solution
- Reference Monolith.dll under ../Monolith/bin/ once you compile
- Hack away!## Known issues
- Using .After(double duration, OrSo type) on successively on the same object with the same animation type is broken (the last call overwrites the previous ones) and it requires an architectural change to fix. Use .After(EventToken token, double duration, OrSo type) instead
- Setting AndReverseIt() on an animation that is chained to another animation will animate, but will jump to the wrong To() value after the animation ends## Testing
HA
HAHAHA
HAHAPlease contact me if you want to help write tests
## Contributing
Tweet me @ThatLousyGuy if you'd like to help contribute! I've only been adding features as I need them, so if you have an idea for a feature that'd be useful, we should chat about it :D