Hello again. I am going to need access to the GetElementRectangle method of the HtmlContainer instance (_htmlContainer) that HtmlPanel uses.
As it stands, I have no options for doing this other than forking your repository and building this component myself because _htmlContainer is not exposed as protected in any way.
Do you think you could do one or more of the following?
.
- Expose the HtmlPanel variable _htmlContainer as `protected/public HtmlContainer { get... }`.
- Expose _htmlContainer.GetElementRectangle as `public RectangleF? GetElementRectangle(string);` in HtmlPanel.cs.
- Allow developers (me) to make our own HTML rendering controls by changing all `internal` functionality to `public` or `internal protected`. (The reason I couldn't make my own custom HtmlPanel control was that I couldn't access CssParser.)
One of the first two options would satisfy my immediate needs, but the third one is more of a long-term request.
Also, would you rather I start sending you pull requests on GitHub instead of requests such as this? If you want me to do the work stated above (or something else/similar), just let me know. Thank You.
Comments: 1. I don't think exposing _htmlContainer as public is a valid practice, maybe making it protected will allow better extensibility... I need to see how my next version will look. 2. delegating 'GetElementRectangle' to HtmlPanel make sense, don't know why I did do it in the first place.. will add in the next version so you can add it yourself now and just update to next version when it will be released. 3. Most of HtmlContainer is public, the internal parts are internal for a good reason. If you are referring to HtmlPanel.BaseStylesheet property then the same can be achieved using CssData.Parse. 4. As for long-term low-level support, between CssData and HtmlContainer there is nothing you can't do. make sense?
As it stands, I have no options for doing this other than forking your repository and building this component myself because _htmlContainer is not exposed as protected in any way.
Do you think you could do one or more of the following?
.
- Expose the HtmlPanel variable _htmlContainer as `protected/public HtmlContainer { get... }`.
- Expose _htmlContainer.GetElementRectangle as `public RectangleF? GetElementRectangle(string);` in HtmlPanel.cs.
- Allow developers (me) to make our own HTML rendering controls by changing all `internal` functionality to `public` or `internal protected`. (The reason I couldn't make my own custom HtmlPanel control was that I couldn't access CssParser.)
One of the first two options would satisfy my immediate needs, but the third one is more of a long-term request.
Also, would you rather I start sending you pull requests on GitHub instead of requests such as this? If you want me to do the work stated above (or something else/similar), just let me know. Thank You.
Comments: 1. I don't think exposing _htmlContainer as public is a valid practice, maybe making it protected will allow better extensibility... I need to see how my next version will look. 2. delegating 'GetElementRectangle' to HtmlPanel make sense, don't know why I did do it in the first place.. will add in the next version so you can add it yourself now and just update to next version when it will be released. 3. Most of HtmlContainer is public, the internal parts are internal for a good reason. If you are referring to HtmlPanel.BaseStylesheet property then the same can be achieved using CssData.Parse. 4. As for long-term low-level support, between CssData and HtmlContainer there is nothing you can't do. make sense?