Hi Gao,

gaozm wrote:
Hello Thomas:
As you know that I have added three files to extend the UNO API. After I added the code to the XML import/export, there are still something wrong when compiling. Do you think whether I need add some other files to extend the UNO API? Such as: XDataPilotDescriptor2.idl DataPilotSourceDimension2.idl XDatabaseRange2.idl SheetFilterDescriptor2.idl XSheetFilterable2.idl XSheetFilterableEx2.idl
and so on. If so, can you tell me which file need to be added except the files 
above. Thank you! :-)

Best Regards!

Gao Zemin

first of all I think that your compile problems are probably independent
of adding further new idl files. Did you compile the new idl files and
build a new types.rdb?

Concerning adding new idl files there are two strategies:
a) add only those idl files which are necessary for the xml
   import/export.
b) extend the UNO API consistently, so that the new filter operators are
   fully available for UNO API users.

I think we should go for b), but limit the amount of new interfaces and
services:

- We don't need a XDataPilotDescriptor2.idl or
  DataPilotSourceDimension2.idl, because data pilot tables don't
  support the new filter operators.

- We don't need a XDatabaseRange2.idl, instead the implementation of
  getFilterDescriptor() returns an object, which also supports
  XSheetsFilterDescriptor2. This should be documented in
  XDatabaseRange.idl.

- We don't need a new service SheetFilterDescriptor2, the service
  SheetFilterDescriptor can be extended by the optional interface
  XSheetFilterDescriptor2.

- We also don't need a XSheetFilterable2.idl or XSheetFilterableEx2.idl,
  the implementations should handle objects which support
  XSheetFilterDescriptor2 and document that in the idl files.

This is not the nicest way from a design point of view, but limits the
amount of changes. We should keep in mind, that all those changes are
only necessary because of the FilterOperator enum, which cannot be
extended.

Thomas


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to