-
-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added Chart options, plus some QOL improvements. #737
Added Chart options, plus some QOL improvements. #737
Conversation
Set collection properties for chart settings to IReadOnly to allow programmers to enter any valid stack. Added options for Charts to allow for more styling options build into ChartJs
@Lucasharskamp Thank you for the PR and for your time. I'll review this tomorrow. |
Alright, I'll look forward to hear from you |
@Lucasharskamp Thank you very much for your detailed feedback, PR (including XML comments) and future contributions details.
|
In the original, the following code: creates this: instead of this:
No need. This isn't something that affects features, it's a simple bugfix for spacing issues. I've got another PR ready to go after this one which overhauls a lot of coding issues (methods that should be static, tasks not passed properly through the callstack, nullability issues, loads of added XML commenting, requested datatypes always going to |
@gvreddy04 can you please handle my 2 PR's? I got more coming up, namely a Bootstrap css generator (so we don't have to suffer the indignities of node.js anymore with scss or creating manual overrides for colors and styling) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
axes -> border
axes -> grid
axes -> title
axes -> ticks (-> major)
plugins -> legend
plugins -> legend -> label
plugins -> legend -> title
List<T>
; this is wrong, because the code can work with any collapsed stack since the data is only read, not modified. This putsIEnumerable<T>
out of the question (because of multiple iteration issues that can go haywire), butIReadOnlyCollection<T>
gives the programmer more options to work with, e.g. providing an array,List<T>
,ImmutableList<T>
,ArraySegment<T>
,FrozenSet<T>
,HashSet<T>
,SortedSet<T>
,Stack<T>
, etc etc etc. So at the very least, this prevents the user from applying a redundantToList()
that only steals performance/memory anyways. Blazor Bootstrap doesn't modify the list anyways, only reads it. And whereasIEnumerable<T>
is easily out of control, this happens far less withIReadOnlyCollection<T>
and would require dedication on the part of the programmer to get that to happen.<see cref="https..." />
, but it must usehref=
<see langword="..." />
helps provide proper markup for code. As an example, I've replaced "if true, then" with the langword on property summaries.(These QOL improvements in the summary documentations are very useful for AI coding tools like Copilot, since that gives the AI better directions when generating code for the user)
Notes about Blazorboostrap I want to tackle later
Records
is better? They're readonly anyways.INumber<TSelf>
using macros in code to separate it from .NET 6 usage. Also allows one to use C#11 for .NET 7/8.StateHasChanged
invocation, which is fine for .NET 6 but not for 7/8. Macros will fix this.