A HotDocs plug-in allows you to extend the HotDocs user interface by adding or customizing options available at the HotDocs library window. For example, you can:
HotDocs plug-ins are usually in-process COM components (DLLs) written in any COM-capable language, although they can also be implemented as out-of-process executable files. Plug-ins that implement the ILibraryWindowIconProvider interface, however, must be in-process DLLs.
When a user launches HotDocs, HotDocs checks for registered plug-ins and creates an instance of the COM object for each plug-in it finds. If the object is created successfully, HotDocs adds additional menus and shortcut menus to the library window, registers file name extensions to be handled by the plug-in, or changes the library item icons, as determined by the plug-in.
You can implement one or more of the following interfaces in your plug-in:
Interface | Description |
This interface lets you create a plug-in that adds a shortcut (context) menu to the HotDocs library window. When users right-click an item in the library, your plug-in can add commands to the shortcut menu. Specifically, this interface lets you add your own submenu to the existing shortcut menu. | |
hiddenILibraryWindowFileHandlerExtension | This interface lets you create a plug-in that specifies how HotDocs handles certain types of files when they are edited or assembled from the library window. For example, you can change what happens when a user selects an .RTF template in the library and clicks the Edit button. In this case, the plug-in could first locate the template in a document management system, check it out, and open it in the word processor for editing. |
hiddenILibraryWindowIconProvider | This interface lets you create a plug-in that changes the icons displayed next to items in the HotDocs library. Specifically, it allows you to place an "overlay" icon on top of the existing icons. For example, if you want to create a version control plug-in, you could use overlay status icons to indicate which templates are checked in, checked out, or not under version control. |
hiddenILibraryWindowMenuExtension | This interface lets you create a plug-in that adds a menu to the library window menu bar. For example, you can add a menu containing commands specific to your integration with HotDocs. |
hiddenIOutputPlugin | This interface enables you to create an output plug-in. Once you have created the plugin, when you are assembling a document, you can see the plug-in by selecting File > Send Document To... The plug-in also adds a new End of Interview output option. This interface lets you write your own output plug-in integration with HotDocs. |
hiddenIPluginPreferences | This interface lets you create preferences to be used with any plug-ins that integrate with HotDocs. |