Name
hw_SetRequesterAdapter -- install a requester adapter (V6.0)
Synopsis
int error = hw_SetRequesterAdapter(hwPluginBase *self, ULONG flags,
                struct hwTagList *tags);
Function
This function can be used to activate a plugin that has the HWPLUG_CAPS_REQUESTERADAPTER capability flag set. This function must only be called from inside your RequirePlugin() implementation. If this function succeeds, Hollywood's inbuilt requester handler will be completely replaced by the requester handler provided by your plugin. In the first parameter, you have to pass a pointer to the hwPluginBase that Hollywood has passed to your plugin's InitPlugin() function. The second parameter must be set to a combination of flags.

Please note that Hollywood will only call your plugin for the requester types that your plugin has explicitly declared as supported by setting the respective flag (see below). This way it is possible that your plugin chooses to replace only a certain set of Hollywood's requesters and not all of them. For example, if your plugin just wants to override Hollywood's file and path requesters, then you would have to set the HWSRAFLAGS_FILEREQUEST and HWSRAFLAGS_PATHREQUEST flags below. In that case, Hollywood would only call your plugin when it has to show a file or path requester - all other types would be handled by Hollywood itself.

The following flags are currently recognized:

HWSRAFLAGS_PERMANENT:
If this flag is set, the requester adapter will be made permanent. This means that other plugins won't be able to overwrite this requester adapter with their own one. If HWSRAFLAGS_PERMANENT is set, all subsequent calls to hw_SetRequesterAdapter() will fail and your requester adapter will persist.

HWSRAFLAGS_SYSTEMREQUEST:
Set this flag if your plugin provides a custom implementation of SystemRequest(). See SystemRequest for details.

HWSRAFLAGS_FILEREQUEST:
Set this flag if your plugin provides a custom implementation of FileRequest(). See FileRequest for details.

HWSRAFLAGS_PATHREQUEST:
Set this flag if your plugin provides a custom implementation of PathRequest(). See PathRequest for details.

HWSRAFLAGS_STRINGREQUEST:
Set this flag if your plugin provides a custom implementation of StringRequest(). See StringRequest for details.

HWSRAFLAGS_LISTREQUEST:
Set this flag if your plugin provides a custom implementation of ListRequest(). See ListRequest for details.

HWSRAFLAGS_FONTREQUEST:
Set this flag if your plugin provides a custom implementation of FontRequest(). See FontRequest for details.

HWSRAFLAGS_COLORREQUEST:
Set this flag if your plugin provides a custom implementation of ColorRequest(). See ColorRequest for details.

See Requester adapter plugins for information on how to write requester adapter plugins.

Designer compatibility
Unsupported

Inputs
self
hwPluginBase pointer passed to InitPlugin()
flags
combination of flags (see above)
tags
reserved for future use; set it to NULL for now
Results
error
error code or 0 for success

Show TOC