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

101 Commits

Author SHA1 Message Date
RobertBeekman
e5a5f10286
Profiles - Added IPluginFeatureDependent interface and implement throughout profiles (#842)
* Profiles - Added IPluginFeatureDependent interface and implement througout profiles
* Workshop - Include dependencies in profile upload request
2024-03-03 20:19:36 +01:00
RobertBeekman
a340f8822e
Replace JSON.NET with System.Text.json (#840) 2024-02-28 19:31:38 +01:00
Robert
cbf2cd1736 Nodes - Added color gradient easing node
Color ramp node - Fixed 1 and multiples of 1 being treated as 0
2022-10-30 18:13:47 +01:00
Robert
f6090dc296 Code style - Use file scoped namespaces
Code style - Ran code cleanup
2022-08-21 11:36:15 +02:00
Robert
eec2419005 Profiles - Fix brush properties being carried over from previous brush 2022-07-30 21:55:28 +02:00
Robert
eccad3042a Plugins tab - Added missing button
Profile editor - Color tweaks
Layer adaption hints - Color tweaks
Layer adaption hints - Save on close
Layer properties - Fix loading of keyframes
2022-07-25 22:39:29 +02:00
Robert
e385165200 Core - Made FloatRange and IntRange readonly structs
ColorGradient - Fixed missing subscribtions when using object list manipulation API
ColorGradient - Fixed editor VM going out of sync
2022-07-17 23:22:45 +02:00
Robert
dd40bdd544 Profiles - Added module activation requirements
Editor - Refactored tools and selected keyframes management
Timeline - Added keyframe duplicating, copying and pasting
Windows UI - Added logging of fatal exceptions
2022-06-05 18:57:42 +02:00
Robert
a0260b53e5 Timeline - Fix collapsed keyframes not showing 2022-05-21 21:23:14 +02:00
Robert
2bf36fbf20 Core - Refactored effects
Profile editor - Added effect creation
2022-04-23 17:07:04 +02:00
Robert
32ebf5f000 Transform tool - Finished initial implementation 2022-02-13 21:19:32 +01:00
Robert
89beb92935 Profiles - Removed the technical concept of extra timelines for events
Profiles - Properly separated out update and render logic
Profile editor - Implemented layer visualization
2022-02-04 00:18:00 +01:00
Robert
642823add5 Timeline - Implemented segments 2022-01-25 00:23:26 +01:00
Robert
913117ad0a Profile editor - Implemented keyframe selection, movement, deletion
Profile editor - Added command scoping
2022-01-22 01:19:10 +01:00
Robert
6f269af8d4 Profile editor service - Make keyframe selection an editor concern 2022-01-20 00:24:48 +01:00
Robert
1832a25426 Core - Reworked brush/effect property storage
Profile editor - Added brush selection
Profile editor - Added playback controls
2022-01-16 00:46:19 +01:00
Robert
c04bff1f48 Profile editor - Ported most VMs of the properties tree and timeline 2022-01-11 00:25:12 +01:00
Robert
4ef7c83c74 Merge branch 'feature/visual-scripting' into feature/avalonia 2021-11-17 23:07:36 +01:00
Robert
1784d2b8b5 UI - Added Avalonia projects 2021-10-09 23:51:42 +02:00
Robert
2a6c004aa6 Merge branch 'development' into VisualScripting 2021-09-12 13:00:58 +02:00
Diogo Trindade
0b370f261c Replaced AsReadOnly property getters with regular properties
Should reduce allocations
2021-09-04 19:41:59 +01:00
Robert
bd3bf20d92 Nodes - Save data binding node scripts 2021-08-25 15:32:58 +02:00
Robert
9d6a61f1e5 Nodes - Added color nodes 2021-08-22 22:31:47 +02:00
Robert
0bb93f2ebd Data bindings - Rewrote data binding system to fully leverage nodes 2021-08-22 18:17:05 +02:00
Robert Beekman
631d8de2c3
Scripting - Enabled scripting (#638)
* Scripting - Simplified view model structure
* Scripting - Removed Layer and LayerProperty scripts
2021-07-04 11:45:32 +02:00
Robert
5367027471 Core - Fixed a lot of compiler warnings
Scripting - Added script renaming/deleting
2021-06-21 19:34:34 +02:00
Robert Beekman
048864fe78
Scripting - Core implementation (#629)
Scripting - Added plugin classes
Layers - Fix certain blend modes not working as intended
UI - Add customizable header per page
Profile editor - Hide the regular header
Profile editor - Added a new toolbar
2021-06-19 09:48:16 +02:00
Robert
3825c34be1 Layer properties - Implement INotifyPropertyChanged on BaseValue
Profile editor - Don't show expand button on property groups without children
Profile editor - Alert user about extra options on brushes
2021-05-21 18:24:47 +02:00
Robert
8066586328 Layer brush/effect dialogs - Fixed default location
Layer properties - Give it a best effort to avoid null base values
2021-04-08 23:51:56 +02:00
Robert
903e434137 Core - Create default instances for properties
UI - Added configurable width/height for brush dialogs
2021-04-08 00:39:26 +02:00
Robert
60df649eb0 Brush presets - Reset properties to default before applying preset
Layer properties - Disable keyframes when resetting to default
Device dialogs - Only dim unselected LEDs if a LED is selected
Migrations - Renamed to stay in order 
Migrations - Added migration for color gradients
2021-04-06 20:56:18 +02:00
Robert
eaa1f15ac3 Data bindings - Fix crash when removing color gradient stops 2021-03-15 19:24:35 +01:00
Robert
ef66511564 Data bindings - Update UI on registration changes
Data bindings - Tweaked UI tabs to handle a large amount of properties better
Color gradient property - Update data binding properties on stop add/remove
2021-03-04 19:17:17 +01:00
Robert
f4ad41cbd4 Data bindings - Simplified getter/setter code 2021-03-02 21:41:56 +01:00
Robert
267e8e6a1e Data bindings - Rework internals to support more situations 2021-03-02 20:22:49 +01:00
Robert
52a9253846 Layer property - Removed generic events in favor of regular ones
Layer property - Added API for easy hiding/showing properties depending on the state of another property 
Layer property - Made properties on property groups opt-out instead of opt-in, you can opt out with [LayerPropertyIgnore] attribute
2021-01-19 19:32:31 +01:00
SpoinkyNL
4db66e1e3e Profile editor - Refactored a lot of VMs so they clean up nicely 2020-12-20 18:13:56 +01:00
SpoinkyNL
10e6cdc54b Code style - Omit the type in a new expressions 2020-12-18 17:54:01 +01:00
SpoinkyNL
c885ae225c Profile editor - Changed data binding behaviour in profile editor 2020-12-18 00:04:37 +01:00
SpoinkyNL
5b0e1c91dd Keyframes - If needed enable keyframes on properties when pasting 2020-12-03 19:48:03 +01:00
Robert
dd73c1e4c9 UI - Updated Stylet
Keyframes - Finished copy/paste implementation
2020-12-03 19:35:38 +01:00
Robert
f110383ed4 Keyframes - Copy/paste WIP
Timeline - Improved sizing, avoid unnecessary scrolling
Timeline - Fix selection rectangle appearing on mousedown
2020-12-02 19:11:39 +01:00
Robert
a5e2dc81a4 Core - Moved JSON calls into a helper 2020-11-26 19:17:20 +01:00
Robert
190d64b497 Core - Removed JsonConvert.DefaultSettings assignement
This could break libraries used by plugins, this closes #501
2020-11-26 19:15:52 +01:00
Diogo Trindade
d21c7dffc2 Added keyframe support to the default value 2020-11-20 22:27:36 +00:00
Diogo Trindade
f637c131c4 Added reset layer property button 2020-11-20 22:27:36 +00:00
SpoinkyNL
8d901027ee Shared UI - Resolved all remaining warnings
UI - Resolved all remaining warnings
Layer properties - Fixed DisableKeyframes layer property attribute not being applied
2020-11-20 23:13:37 +01:00
SpoinkyNL
fb3466e102 Core - Nullable refactoring
Core - Nullable refactoring


Core - Nullable refactoring (finish)
2020-11-17 22:50:38 +01:00
Robert
b185b28645 Core - Corrected disposable pattern usage
Core - Further nullable refactoring..
2020-11-17 20:54:49 +01:00
Robert
a3cd32f6c4 Core - Added XML comments to all remaining public members/methods
Core - Refactored a lot of code for nullable reference types
2020-11-16 20:16:06 +01:00