pyrevitlabs / pyRevit

Rapid Application Development (RAD) Environment for Autodesk Revit®
http://wiki.pyrevitlabs.io
GNU General Public License v3.0
1.33k stars 337 forks source link

Options for Help Dialog #1985

Closed kirsch33 closed 1 year ago

kirsch33 commented 1 year ago

Is your feature request related to a problem? Please describe. I'm not sure if this qualifies as a true feature request, but I'd like to know what others are doing with respect to providing help/info windows for custom pyRevit tools.

I have developed a number of different tools for my groups use each of which require a pretty specific understanding of their function to use properly, and I want to create buttons within pyRevit that open up new windows to explain this in detail. These new windows, ideally, would include hyperlinks to images on our network drives to aid in the descriptions.

I tried looking into the WPF options that pyRevit provides but it breaks down pretty quick when trying to add very detailed WPF forms with items like hyperlinks or elements that respond to hovering, etc.

Describe the solution you'd like Either some ideas from others that have already been through this or far more WPF options from pyRevit. Or, better yet, another form element tailored to creating help dialogs.

jmcouffin commented 1 year ago

There is a pretty strong framework for this: F1 mapping, tooltip, video tooltip, ...

Check out the bundle.yaml content https://pyrevitlabs.notion.site/pyRevit-Bundles-12323e3090904d9aa7cdc3d82095d3e3 you can use a specific tooltip to convey instruction, or even a video tooltip you can also map the F1 to a specific help file or URL

take a look at how it is done in the bundle.yaml files of the repo https://github.com/search?q=repo%3Aeirannejad%2FpyRevit+help++language%3Ayaml&type=code

the docpathcan be set in the extension.json file https://github.com/eirannejad/pyRevit/blob/6aa2c493231f4301125f2570dc5efd644691bbad/extensions/pyRevitTags.extension/extension.json#L15

kirsch33 commented 1 year ago

thanks for the references. I found this issue after more searching:

https://github.com/eirannejad/pyRevit/issues/631

as well as this repo which uses pyRevit and is very similar to some of the things I was struggling with:

https://github.com/DmytroSE/RevitApi-Python/tree/master