Claims
- 1. In a computer system having an operating system with a shell that provides functionality, an application program installed under the operating system, and a class of objects related to the application program, said class of objects having an associated object class identifier, a computer-readable medium holding computer-executable instructions for performing a method comprising the steps of:
providing a shell extension handler for the class of objects to extend the functionality of the shell relative to the class of objects, said shell extension handler provided by the application program when the application program is installed under the operating system and being independent of the operating system; and running the shell extension handler to extend the functionality of the shell for an object in the class of objects when the object class identifier is invoked through the shell.
- 2. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising
(a) accessing, on the first computer, computer-executable instructions which, when run on a data processing system having an operating system with a shell that provides functionality, an application program installed under the operating system, and a class of objects related to the application program, said class of objects having an associated object class identifier, perform the steps of:
(1) providing a shell extension handler for the class of objects to extend the functionality of the shell relative to the class of objects, said shell extension handler provided by the application program when the application program is installed under the operating system and being independent of the operating system; and (2) running the shell extension handler to extend the functionality of the shell for an object in the class of objects when the object class identifier is invoked through the shell; and (b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
- 3. A computer system comprising:
(a) a display; (b) a processor; and (c) a memory holding:
(1) an operating system including a shell for providing functionality including performing operations on file system objects; and (2) a handler for:
(i) receiving a request to perform a file system operation on a selected file system object; (ii) determining whether the requested file system operation should be performed on the selected file system object; and (iii) allowing the shell to perform the requested file system operation on the selected file system object if the handler has determined that the requested file system operation should be performed on the selected file system object.
- 4. The computer system of claim 3 wherein the handler is further for preventing the shell from performing the requested file system operation on the selected file system object if the handler has determined that the requested file system operation should not be performed on the selected file system object.
- 5. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising:
(a) accessing, on the first computer, computer-executable instructions which, when run on a data processing system having an operating system with a shell that provides functionality, an application program installed under the operating system, and a class of objects related to the application program, said class of objects having an associated object class identifier, perform the steps of:
(1) providing a handler to be called when a request to perform a file system operation on a selected one of the file system objects is received by the operating system, said handler indicating whether the file system operation should be performed on the selected file system object; (2) in response to a request to perform a specified system operation on the selected file system object, calling the handler to receive an indication of whether the specified file system operation should be performed on the selected file system object; and (3) using the indication received from the handler to determine whether to perform the specified file system operation on the selected file system object; and b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
- 6. A computer system comprising:
(a) a display; (b) a processor; and (c) a memory holding:
(1) an operating system with a name space mechanism for providing a name space of objects, including file system objects; (2) a name space viewer for viewing objects in the name space on the display; (3) an application program installed under the operating system; and (4) a name space extension provided by the application program for adding non-file system objects to the name space.
- 7. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising:
(a) accessing, on the first computer, computer-executable instructions which, when run on a computer system having a display device, a registry holding configuration information and an operating system with a name space mechanism for providing a name space of objects, perform the steps of:
(1) providing a name spacer viewer for displaying objects in the name space of the computer system; (2) registering a name space extension handler for a new name space in the registry; (3) providing at least one non-file system object as part of the name space; and (4) calling the name space extension handler to display the non-file system object by the name space viewer; and b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
- 8. A computer system comprising:
(a) an input device; (b) a processor; (c) a display device that displays a representation of a source object and a representation of a target object; and (d) a memory holding:
(1) an operating system; (2) a data object extension handler provided on a per-object class basis for a predetermined class of objects, the data object extension handler for:
(i) customizing the source object such that the data object extension handler determines a format for data to be transferred when a drag-and-drop operation is performed on the source object in response to a user using the input device; (ii) in response to the user using the input device, initiating a drag-and-drop operation on the source object such that the representation of the source object is dragged to be positioned over the representation of the target object; (iii) invoking the data object extension handler to determine the format for the data to be transferred from the source object when the drag-and-drop operation is performed on an object of the predetermined class; and (iv) in response to the user using the input device, dropping the representation of the source object on the representation of the target object to complete the drag-and-drop operation.
- 9. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising:
(a) accessing, on the first computer, computer-executable instructions which, when run on a computer system having a display device for displaying a representation of a source object and a representation of a target object, and an operating system, perform the steps of:
(1) providing a drop target extension handler on a per-object class basis for a predetermined class of objects for customizing behavior of the target object when a drop occurs on the target object; (2) in response to the user using the input device, initiating a drag-and-drop operation on the source object such that the representation of the source object is dragged to be positioned over the representation of the target object; (3) as part of the drag-and-drop operation, transferring data of the source object to the target object; and (4) when a user drops the representation of the source object on the representation of a target object of the predetermined class, invoking the drop target extension handler to process the transferred data in the target object in response to the drop; and b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
- 10. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising:
(a) accessing, on the first computer, computer-executable instructions which, when run on a computer system having a display device, an object having an associated object identifier, the object belonging to an associated object class, the object class having an associated object class identifier which is different than the object identifier, the object class having an associated context menu that specifies operations that may be performed relative to objects of the object class, an operating system that includes a shell which specifies a predefined first set of menu items for the context menu associated with the object class, and an application program installed under the operating system, wherein the object and object class are associated with the application, perform the steps of:
(1) providing a database of entries holding configuration information associated with the context menu; (2) providing a context menu handler for adding to the context menu a second set of menu items not provided by the shell, said context menu handler and said second set of menu items provided by the application program and being independent of the operating system; (3) registering the second set of menu items in the database of configuration information in association with the object class identifier; and (4) when the object is accessed, running the context menu handler to display the second set of menu items; and b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
- 11. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising:
(a) accessing, on the first computer, computer-executable instructions which, when run on a computer system having a display device, a memory means and a processing means running an operating system that includes a shell that provides functionality, an application program installed under the operating system, and a file having a file type associated with the application, the file having an associated file identifier, perform the steps of:
(1) providing a database of registration information that is stored in the memory means; (2) storing a representation of a per-instance icon for the file in the memory means; (3) registering the representation of the per-instance icon in the database in association with the file identifier (4) providing, and registering in the database, a per-instance icon handler for the file type to extend the functionality of the shell relative to the file type, said per-instance icon handler provided by the application program and being independent of the operating system, wherein the per-instance icon handler is for finding the representation of the per-instance icon and providing the representation of the per-instance icon to the operating system to display the icon on the video display; and (5) in response to a request to display an icon for the file, accessing the database to locate the per-instance icon handler and using the per-instance icon handler to display the per-instance icon as the icon for the file on the video display; and b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
- 12. A method of transferring a computer program product from a first computer to a second computer connected to the first computer through a communications medium, comprising:
(a) accessing, on the first computer, computer-executable instructions which, when run on a computer system having a display device, a memory means and a processing means running an operating system that includes a shell that provides functionality, an application program installed under the operating system, perform the steps of:
(1) providing a database of registration information that is stored in the memory means; (2) providing an object that has associated properties, the object having an associated object identifier, the object belonging to an associated object class, the object class having an associated object class identifier which is different than the object identifier, wherein the shell provides a first property sheet page for the object, the first property sheet comprising a first set of properties predefined by the shell for objects of the object class; (3) registering a property sheet handler in the database, said property sheet handler for adding additional property sheet pages for the object class, the property sheet handler provided by the application program and being independent of the operating system, said additional property sheets comprising additional sets of properties not predefined by the shell for objects of the object class; (4) receiving a request to add an additional property sheet page for the object class; and (5) in response to the request, adding an additional property sheet page for the object class using the property sheet handler; and b) transferring the computer-executable instructions from the first computer to the second computer through the communications medium.
CROSS-REFERENCE TO RELATED INVENTIONS
[0001] This is a continuation of U.S. Ser. No. 08/355,410.
Divisions (1)
|
Number |
Date |
Country |
Parent |
09179240 |
Oct 1998 |
US |
Child |
09392344 |
Sep 1999 |
US |
Continuations (3)
|
Number |
Date |
Country |
Parent |
09704627 |
Nov 2000 |
US |
Child |
10188548 |
Jul 2002 |
US |
Parent |
09392344 |
Sep 1999 |
US |
Child |
09704627 |
Nov 2000 |
US |
Parent |
08355410 |
Dec 1994 |
US |
Child |
09179240 |
Oct 1998 |
US |