Roadmap for V1.1.x
What I have planned:
The release date will be sometime in the summer of this year.
Unfortunately, this implementation phase is taking so long because I am still a student and unfortunately have not yet studied computer science. I am also currently doing my Abitur, which means I have a lot of studying to do and unfortunately have very little time for my projects.
General Overview:
Bindings should be supported.
PreBuild Assemblies should be loaded of the User Project.
All Properties of Controls should be editable.
Selecting a Theme for your View.
A lot of Bug Fixes
PropertiesView 10 < Todos left
0 Finished
Support for all Namespaces, which are located in the Avalonia namespace or in your Assembly.
That means that all Expander of the ControlsCreatorObject has to have the Option to select a class from a custom namespace.
It is also necessary to check if the instance of the selected class can be injected in the Property. => Check if Type Cast is possible.
In addition, the user should have the option to choose whether he wants to select from a preselected set of classes or whether he wants to select a class from his own or the Avalonia namespace.
As a result, a new method has to be created which should determines which classes can be type cast to the given Property Type.
This method has to do that for the Avalonia Namespace and for the loaded Assembly.
Saving and loading the Config.
The settings should be displayed in a message box because the properties view would be too crowded.
Example
You can inject all Controls in the Content Property => User has to select which Control he wants to use.
User can not only change all constructors of the selected type but also all properties of the type.
Render Method of ControlsCreatorObject.ConstructorModel has to be extended.
Properties have to added which saves the current Config. => Update the XmlControl Node.
Search bar for the Properties of a Type.
Bindings
A button with the AddLink Icon of MaterialUI has to be added to the ControlsCreator Classes Render Methods, which opens a Binding Dialog.
In this Dialog the User should select a Property of the Referenced View Model.
Backend has to get the Type of the Class and get all possible Properties which are settable and gettable!
After checking if the Type is Correct, the button icon has to change to Link Icon of MaterialUI
The Color has to change from blue to green too.
HierarchyView 2 Todos left
0 Finished
Controls can be moved in the Tree View.
Option to move it out of a Parent Control or in another Parent Control
Important: Avalonia™ does not like it when you move Controls at runtime => It throws an exception if the parent property was not changed correctly.
TopNavigationView 3 Todos left
0 Finished
Option to change the ViewModel of the current View => Combo box which lists all ViewModels which are Located in the YourProject.ViewModels namespace.
Better Open Menu => Open Directory Dialog and Message Box.
Correct Project loading in the backend. All Paths Views, ViewModels and Assembly.
NEW Views: 5 < Todos left
0 Finished
StyleView or ThemeView
Users should be able to select between Themes (FluentUI, SukiUI, MaterialUI, SemiUI) for their views.
Selected Theme should be loaded.
Helper View to creating Styles (Optional => I am not sure if I can implement it.):
Easy Menu for Creating an .axaml Style File. => User should be able to select a Filename.
When the user opens an .axaml View he should get a representation of Style settings through an TreeView.
Editing, Deleting and creating new Style Setters.
All Views
Search bars should be usable
More Icons Buttons instead of Buttons with a Text.