[Feature Request]: Powered by Krypton Toolkit button
Describe the solution you'd like Would it be an idea to add a Button or other type of control to emphasize the use of KToolkit and link to it and that developers can incorporate into their programs...
These options are disabled for now (06-20-2024) and will be not in V90. until there's more time. All components will be hidden from the toolbox for now.
That would be nice of developers to do that, but those sort of things go into about box's and / or license text that should be shipped with apps. Not sure what "we" as "KToolkit maintainers" would need to do ?
@Smurf-IV @Wagnerp,
A possibility would be a preconfigured group box containing some info about KT. A link to the site/GitHub. The logo. It's a possibility to shape this info and attract other developers, also a chance to create more exposure for the toolkit.
......
And as most apps have a theme changing component, then it could include that combo as well..
How about a preconfigured about box?
How about a preconfigured about box?
too restrictive, AS most about boxes need to have additional info about the actual app, with areas for licensed components, and actual licensed status etc. So having a preconfigured "GroupBox" in the designer would mean the greatest flexibility
- Yeah, Hookup the KThemeCombo in there
- although if a project has a fixed theme or uses only a couple of themes it would be needed to hide the Combo
- Maybe leave that theme selection implementation to the dev...??
- Preconfigured Aboutbox is an option but adding an about-form to a project is no big deal. And as Surf says most projects summarize this kind of info on their own about box. (Yes and No). Rather a groupbox and a KAboutBox that uses the KAboutGroupBox..
- GroupBox could contain KT Version info of the Klibs loaded (if that makes sense)
Example where a preconfig wouldn't work that great:

I think
- the GroupBox would be a good start and keep it manageable...
- Incorporating the Theme Combo is not always desirable...
Another option/addition would be a KAboutButton with the Logo and a text like "About KT" / "Powered by KT", which displays a KAboutForm
@Smurf-IV Might be a good idea to use the KryptonLinkLabel for this, as you can specify a link area for the hyperlink
@Wagnerp @Smurf-IV, some more info that's needed I can think of,
- The text for the KAboutGroupBox
- Image(s) that possibly can be used
- Link to the home page and/or Github & Nuget landing page (maybe more than one link)
- Clearly state the intention of the link(s).
- That could go as far as a link tot the Github site for support.
- Invitation link for the Discord server
- Documentation homepage
- etc.
- The components should be part of the Krypton Toolkit so they will always be available regardless which package the dev will use.
- A KAboutButton that can be used to launch a KAboutform
I think displaying any system info would be redundant / Windows version / KLibs (since dev can see that in VStudio)..
Your input please....
It needs to be a drop-in component, restricting the editing of text should be easy, translations (if required) can be done via the new KryptonLanguageManager.
I don't know if we've done a KAboutForm yet... I guess we could take the default one from VB, CSharpify it, and modernise the layout? @Smurf-IV Thoughts?
Edit:
This looks good https://www.codeproject.com/Articles/7390/About-The-About-Box

The link I posted would kill two birds with one stone, look at the GIF in the article...
@Wagnerp @Smurf-IV The (my)idea is to use a GroupBox as the (main) component that will contain all the information. That Box will be available to devs so they can add it to their own about box.
Our AboutBox will contain that GroupBox as well. Devs can launch that box by themselves. Or devs can use the KAboutButton that launches the KAboutBox
If info changes / needs updating than only the GroupBox component needs to be fixed.
I thought that might be the most simple way to do it and please all of them in one go ;)
Going to try and implement this tomorrow
@giduac & @Smurf-IV
First itteration
Thoughts?
I think it should also state the License type before the "Click here" link. The Icon needs to move down so that it appear in line with the top of the text (Or move the text up !) Documentation link is not necessary, as this is going into a published app. The Docs are for the developers, as is the discord link. Need to have a title above the Theme combo, so that the "User" of the app knows what it is.
Hi @Smurf-IV
The Icon needs to move down so that it appear in line with the top of the text (Or move the text up !)
Trying to use a TableLayoutPanel isn't there some code in the KMbox which deals with something similar which could be reused?
Try using the padding option 0, 10, 0, 0
@Wagnerp @Smurf-IV My 2 cents
- How about adding some context (how cool KT is) about what KT is all about...
- Maybe an extra image which could be a sort of composite image of the controls available in KT. The current icon could be part of that.
- Maybe there's somebody on the Discord channel who's handy with graphics and would like to whip-up one...
- That image could also hold the header "Powered by KT", and give it some more punch
- The theme-chooser could be a problem for devs that only use a couple of themes. In that case you don't want the user to go beyond that scope. Might also interfere with the theme chooser the dev is using already.
- TableLayout in a groupbox should work just fine. Gives good control on positioning.
I'm thinking to also have the option to display the version of the toolkit DLLs being used?
@Smurf-IV
Try using the padding option 0, 10, 0, 0
Is that on the picturebox itself?
@giduac
The theme-chooser could be a problem for devs that only use a couple of themes. In that case you don't want the user to go beyond that scope. Might also interfere with the theme chooser the dev is using already.
That can be a option the dev can turn on/off, I think you can apply a filter to it also
@giduac
The theme-chooser could be a problem for devs that only use a couple of themes. In that case you don't want the user to go beyond that scope. Might also interfere with the theme chooser the dev is using already. That can be a option the dev can turn on/off, I think you can apply a filter to it also
It also needs to be accessible to the dev if the theme selection is stored / restored on program shutdown and startup. Yeah, an option to turn it off would be ok. Anyways it should not interfere with a KManager & chooser that the dev is using already. So they can add the AboutBox to a project without a hassle.
Hi @giduac
Please test using build >= .289
Cool @Wagnerp,
Will do, somewhere during the week...
Hi @giduac
Have you had a chance to try this feature yet?
@Wagnerp
Only had a quick look and some ideas came up but I'm kind of busy. I'll see if there's some time over the weekend.
@Wagnerp My first thoughts:
The name of the control in the VStudio Toolbox
- using names like KryptonAboutBox and KryptonAboutButton would put these controls on the top of the toolbox. Getting more attention. KryptonAboutDialog would be a Window that is launched from the KAboutButton a does not need to be part of the VStudio KToolbox.
Headergroup I think a KHeaderGroup looks better that the KGroupbox. Imo it will add to the overall appearance.
Using a TabControl (or better a Krypton equivalent) to organize the information. Keeps the size of the box in check. Makes it easy to alter the contents without changing the control overall. Pages for:
- sort of semi commercial text that explains/outlines what the Krypton Suite is about
- License info
- Author info
- Links (GitHub / Discord / NuGet / documentation)
- Loaded modules
- How to Donate
Steps
- I think its best to first get the contents clear and make a good plan.
- Then make a functional mock-up that contains all the components / info and functionality.
- When the mock-up becomes final the controls can be created and tested.
Hi @giduac
Using a TabControl (or better a Krypton equivalent)
Using the KryptonNavigator could cause problems, as it would mean that Krypton.Navigator.dll would be pulled in every time.
@Smurf-IV What do you think?
Hi @giduac
Using a TabControl (or better a Krypton equivalent)
Using the
KryptonNavigatorcould cause problems, as it would mean thatKrypton.Navigator.dllwould be pulled in every time.@Smurf-IV What do you think?
@Wagnerp @Smurf-IV Yeah that's what I was thinking too. To make it work Krypton Suite wide it has to be done with components from the Toolkit only.
Maybe something with panels and a toolstrip. Or instead of a toolstrip toggle buttons and panels
If you guys have ideas drop'm here and we can see what can be done with it....
Hi @giduac
Using a TabControl (or better a Krypton equivalent)
Using the
KryptonNavigatorcould cause problems, as it would mean thatKrypton.Navigator.dllwould be pulled in every time. @Smurf-IV What do you think?@Wagnerp @Smurf-IV Yeah that's what I was thinking too. To make it work Krypton Suite wide it has to be done with components from the Toolkit only.
Maybe something with panels and a toolstrip. Or instead of a toolstrip toggle buttons and panels
If you guys have ideas drop'm here and we can see what can be done with it....
@giduac @Smurf-IV
The only other way to do it is to implement a KryptonTabControl?