Plug-in module host framework
First Claim
1. Computer-executable process steps stored on a computer-readable medium, the steps executable so as to provide an application programming interface (API) to a client application for communicating between the client application and a plug-in module, the plug-in module extending a base functionality of the client application, said API having routines comprising:
- a menu-create routine, callable by the client application, which searches a designated plug-in module storage means for plug-in modules, a module consisting of a plug-in module interface resource and at least one corresponding plug-in module code resource, and which, after a plug-in module is found, enters information regarding the found plug-in module into a structure, the structure being used to create and to display a plug-in menu, the plug-in menu allowing a user to select a particular plug-in module;
an "about" menu-create routine, callable by the client application, which enters "about" plug-in information into an "about" structure, the "about" structure being used to create and to display a plug-in "about" menu, the plug-in "about" menu allowing a user to select a particular plug-in module;
a menu-enable routine, callable by the client application, which enables the plug-in menu so that a user may select a particular plug-in module from the plug-in menu;
a menu-disable routine, callable by the client application, which disables the plug-in menu so that a user may not select a particular plug-in module from the plug-in menu; and
an invoking routine, callable by the client application, which, in a case where a particular plug-in module is selected from the plug-in menu, obtains an entry point routine address for the particular plug-in module and calls an entry point routine corresponding to the entry point routine address so as to permit the client application to utilize the particular plug-in module.
2 Assignments
0 Petitions
Accused Products
Abstract
Computer-executable process steps stored on a computer-readable medium to provide an application programming interface (API) to a client application for communicating between the client application and a plug-in module. The API includes a menu-create routine which searches for plug-in modules, which enters information regarding a found plug-in module into a structure, the structure being used to create and to display a plug-in menu of found plug-in modules, an "about" menu-create routine which enters "about" plug-in information into an "about" structure, the "about" structure being used to create and to display a plug-in "about" menu, a menu-enable routine, a menu-disable routine and an invoking routine which permits the client application to utilize a selected plug-in module.
143 Citations
17 Claims
-
1. Computer-executable process steps stored on a computer-readable medium, the steps executable so as to provide an application programming interface (API) to a client application for communicating between the client application and a plug-in module, the plug-in module extending a base functionality of the client application, said API having routines comprising:
-
a menu-create routine, callable by the client application, which searches a designated plug-in module storage means for plug-in modules, a module consisting of a plug-in module interface resource and at least one corresponding plug-in module code resource, and which, after a plug-in module is found, enters information regarding the found plug-in module into a structure, the structure being used to create and to display a plug-in menu, the plug-in menu allowing a user to select a particular plug-in module; an "about" menu-create routine, callable by the client application, which enters "about" plug-in information into an "about" structure, the "about" structure being used to create and to display a plug-in "about" menu, the plug-in "about" menu allowing a user to select a particular plug-in module; a menu-enable routine, callable by the client application, which enables the plug-in menu so that a user may select a particular plug-in module from the plug-in menu; a menu-disable routine, callable by the client application, which disables the plug-in menu so that a user may not select a particular plug-in module from the plug-in menu; and an invoking routine, callable by the client application, which, in a case where a particular plug-in module is selected from the plug-in menu, obtains an entry point routine address for the particular plug-in module and calls an entry point routine corresponding to the entry point routine address so as to permit the client application to utilize the particular plug-in module. - View Dependent Claims (2, 3, 9, 10, 11, 12)
-
-
4. A method for accessing functionality of a plug-in module from a client application, the plug-in module extending a base functionality of the client application, said method comprising the steps of:
-
calling a menu-create routine which searches a designated plug-in module storage means for plug-in modules, the module consisting of a plug-in module interface resource and at least one corresponding plug-in module code resource, and which, after a plug-in module is found, enters information regarding the found plug-in module into a structure, the structure being used to create and to display a plug-in menu, the plug-in menu allowing a user to select a particular plug-in module; calling a menu-enable routine which enables the plug-in menu on a display; and calling an invoking routine which, in a case where a particular plug-in module is selected in the plug-in menu, obtains an entry point routine address for the particular plug-in module and calls an entry point routine corresponding to the entry point routine address so as to permit the client application to utilize the particular plug-in module. - View Dependent Claims (5, 6, 13, 14, 15, 16)
-
-
7. A host framework for providing functionality of a plug-in module to a client application, the plug-in module extending a base functionality of the client application, said framework comprising:
-
an abstract plug-in manager base class for locating a plug-in module storage means, for locating specified plug-in modules, and for creating a category list of the specified plug-in modules; a type manager class, derived from said plug-in manager class, for creating a type information record which contains information for invoking specified plug-in modules, for adding the type information record to the category list, and for associating a plug-in module from the category list with a menu identification value; a plug-in category class, used by said abstract plug-in manager base class and by said type manager base class, for managing storage of type information records of a specified category and for retrieving a type information record from the category list; and a plug-in class, used by said abstract plug-in manager base class, by said type manager base class, and by said plug-in category class, for associating a plug-in module with a menu item, and for obtaining an entry point address to invoke the plug-in module associated with the menu item. - View Dependent Claims (8, 17)
-
Specification