A first improvement would be to classify content objects more precisely than is done today. The Insert Object dialog box simply displays a flat list of any object marked "Insertable" in the registry. If you had three different charting packages on your machine, you'd see three different entries with "Chart" in them somewhere, entries that would not typically be listed together. The same thing applies to other content types. With better classification, a user might be presented with a list of individual generic content types such as Chart, Table, Text, Sound, Picture, Video, Control, and so on, as shown in the mock-up in Figure 25-1. In this manner, the list would be quite short, and selecting a content type from this generic list would invoke the user's preferred server for that type.
Figure 25-1.
A mock-up of an Insert Object dialog box that displays generic content types.
Now the user might want to select a specific server for a particular type, so each type listed in this dialog box could be expanded to show the individual servers that are registered for that type, as shown in Figure 25-2.
Figure 25-2.
A mock-up of the selection of a specific type registered for a generic type.
Through this sort of user interface, a user can quickly select a type of content without any extra complexity. But if the user wants to see all the information, there is still a way to access it.