1
0
mirror of https://github.com/Artemis-RGB/Artemis synced 2025-12-13 05:48:35 +00:00

66 Commits

Author SHA1 Message Date
SpoinkyNL
ee37c3b836 Layer brushes - Make enable-disable process consistent with plugins 2020-06-07 15:00:40 +02:00
SpoinkyNL
97c85e238c Layer brushes - Render now always originates from 0,0
RGB.NET brushes - GetBrush is no called after properties are initialized
Profile editor - Fixed inputs not responding to updates from the visualization tools when keyframes are disabled
2020-06-03 19:22:08 +02:00
SpoinkyNL
92faafe1de Profile editor - Moved layer property input to the Shared UI project 2020-06-02 22:23:09 +02:00
SpoinkyNL
cdb91021a2 Layer brushes - Added RGB.NET-based layer brushes
Layer brushes - Added sample RGB.NET-based color brush
Layer properties - Save on gradient edit dialog close
Layer properties - Fix layer brush keyframes not working after changing layer brush
2020-05-31 21:58:06 +02:00
SpoinkyNL
221c8bc7e7 Layer properties - Restored much functionality on the reworked VMs 2020-05-24 22:05:04 +02:00
SpoinkyNL
7b238e241e Datamodels - A few small fixes to fix errors during startup
Layer properties - Reimplemented property tree
Stylet - Add support for binding views to generic VMs
2020-05-17 18:54:15 +02:00
Robert
54081b591b UI - Restructured layer property VMs 2020-05-01 23:07:21 +02:00
SpoinkyNL
41b3c77210 UI - My poor UI :< I regret starting this refactor 2020-04-30 00:12:24 +02:00
Robert
e97fc046f5 Core - Added ways for the core to easily access brush properties
%*/@ me, dealing with generic types in APIs is tricky
2020-04-29 19:45:13 +02:00
Robert
660324c980 Conditions - Refactor layer properties WIP 2020-04-29 19:44:42 +02:00
Robert
d9bba8cb54 Conditions - Refactor layer properties WIP (needed for consistency..) 2020-04-28 19:40:03 +02:00
SpoinkyNL
349e0a2c41 Datamodel - Added basic infrastructure 2020-04-26 17:30:43 +02:00
SpoinkyNL
9f8fc9f70e Core - Add HidSharp to force plugins to share the HidSharp types
Core - For now, set default log level to debug
ColorGradient- Improved GetColor performance
ColorGradient - GetColor now handles colors not between two stops properly
Home - Fix links
Plugins - Only allow layer property registration through Brushes
Color brush - Default to solid color
2020-04-21 19:59:05 +02:00
SpoinkyNL
a8912076d3 Noise brush - Added option to map noise to a gradient
Color brush - Only show gradient/color option when applicable
Gradient picker - Design tweaks
2020-04-17 19:16:53 +02:00
Robert
0a5f16a0f4 Core - Moved layer properties to their own class 2020-03-09 19:57:17 +01:00
Robert
c62997ca41 Plugins - Added descriptions
Settings - Plugin settings tab
UI - Catch exceptions during exception dialog display
Plugins - Implemented enable/disable of plugins (WIP)
Novation - Added Launchpad Mini layout and image
2020-03-03 23:18:00 +01:00
SpoinkyNL
57d82fafa8 Plugins - Implemented enabling/disabling (doesnt work for devices)
Plugins - Disable plugins that caused a crash
Tray icon - Added menu items for quick access
2020-03-02 22:15:25 +01:00
Robert
9b62ba5f3d Plugins - Added optional configuration window
Plugins - Moved plugins to their own directory
Device providers - Added all RGB.NET device providers
2020-02-27 19:05:35 +01:00
SpoinkyNL
a79c56eaa1 Core port - Targeting .NET Core 3.1!
Core port - Updated projects to new project layout
Core port - Changed the way devices are identified to be consistent across different frameworks
Core port - Updated plugin system to no longer use AppDomain but AssemblyLoadContext (through McMaster.NETCore.Plugins)
Core port - Renamed a few events to keep Fody from getting confused
2020-02-22 18:38:32 +01:00
SpoinkyNL
1d81b782da Corsair - Added VOID layout and Virtuoso PH layout
Core - Added default value to brush plugin properties
Core - Bitmap brush optimizations
2020-02-17 20:46:27 +01:00
SpoinkyNL
4b1b0248f5 Layers - Allow the clip render mode to stretch if really needed
Core - Include the canvas' SKImageInfo in render calls
2020-02-16 01:56:45 +01:00
Robert
6f95c609b6 Project cleanup 2020-02-13 19:38:43 +01:00
Robert
51a21b7a8a UI VM factories - Shortened names for readibility
Layer properties - Ensure only LayerBrushes can add properties and make sure that method instantiates a keyframe engine
Layer properties UI - Respond to properties being added/removed
2020-02-12 21:18:00 +01:00
Robert
9b1d28840c Refactored shape brushes to use the properties system 2020-02-11 19:10:31 +01:00
SpoinkyNL
022e14e98d Added different rendering strategies for fill modes 2020-02-09 23:20:36 +01:00
Robert
960584cc3c Adjusted anchor calculations for simplified render process
Project cleanup
2020-01-31 22:15:32 +01:00
SpoinkyNL
fabb385556 Implemented profile default loading and rendering without the editor
Changed edit tool rotation to allow rotation past 360 degrees
2020-01-26 11:35:39 +01:00
Robert
ae330c3769 Code cleanup 2020-01-14 19:18:24 +01:00
Robert
d1e0267709 Started work on the keyframe engine to tie everything together! 2020-01-08 20:36:27 +01:00
SpoinkyNL
580db3185e Added layer shapes, editor is still WIP 2019-12-15 22:52:04 +01:00
Robert
fe21bc83da Redesigned sidebar
Removed dependency on Mahapps, ControlzEx and Dragablz
2019-12-10 20:24:11 +01:00
SpoinkyNL
8795be2cde Rendering improvements 2019-12-06 23:00:30 +01:00
Robert
8ba2e58c5d Implemented layer element saving
Added a working setting to the brush element
2019-12-04 19:54:18 +01:00
Robert
2e96d796a8 Implemented SkiaSharp layer rendering 2019-12-03 23:43:15 +01:00
SpoinkyNL
96a057df23 Implemented most of the rendering pipeline in SkiaSharp 2019-12-03 00:09:32 +01:00
Robert
b8a678c97f Skia WIP 2019-12-02 20:14:28 +01:00
SpoinkyNL
9148323ad5 Implemented layer elements
Added a brush layer element
Corsair - Added ST100 RGB layout
2019-12-01 18:55:49 +01:00
Robert
f32edcf502 Implemented layer LED assignment
Added a centralised ProfileEditorSurface for communication between VMs
Prefixed Surface, Device and Led with Artemis to differentiate them better
2019-11-29 17:37:22 +01:00
Robert
97907c97eb Implemented profile creation, deletion and activation 2019-11-20 19:25:29 +01:00
Robert
66f7dc94c8 Moved from EF and SQLite to LiteDB 2019-11-20 19:19:13 +01:00
Robert
fd942dab25 Started work on profiles 2019-11-18 20:11:17 +01:00
Robert
5a8a2b2684 Invalid plugin settings will fall back to their type's default
Main window remembers it's position now
Surface editor's surface list size is saved
2019-11-14 21:16:50 +01:00
Robert
5340e6c6d4 Code cleanup 2019-11-13 19:57:23 +01:00
SpoinkyNL
c846d63acf Added some of the architecture for the profile editor 2019-11-11 22:12:36 +01:00
SpoinkyNL
eecbe4636e Added Logitech support (limited to G910 and G403 for now)
Added a splashscreen
2019-11-10 17:36:18 +01:00
SpoinkyNL
54fcbdb732 Cleaned up setting service, lol old approach was dumb
Made PluginSetting<T> act as a singleton
2019-11-04 21:36:46 +01:00
SpoinkyNL
05eed5ba00 Made devices aware of the plugin that loaded them
Fixed Corsair LL Fans layout
Expanded render events
Added identify option to device settings, must move this to be reusable though
2019-11-03 11:38:28 +01:00
SpoinkyNL
8777e8975f Added a layer of abstraction between RGB.NET and Artemis
This means Artemis can add extra functionality
It also avoid having to reference RGB.NET for basic rendering
Implemented rendering scaling
2019-10-30 23:20:06 +01:00
Robert Beekman
ce383468ea Added dialog system
Added surface delete
2019-10-26 21:54:25 +02:00
SpoinkyNL
10bc3f84dd Added active surface-config management code
Added surface-config creation
2019-10-16 00:00:26 +02:00