From Apache OpenOffice Wiki
How is it different from the helperapi
- written in c++
- currently supports just excel
- supports macros running natively in opeoffice basic by close co-operation ( and patches ) to the basic runtime
Why ditch the helperapi and use the oovbaapi from ooo-build written in C++
- because the oovbaapi is written in c++ its easier track memory and performance problems .
- the helper api leverages the calc uno objects to provide a compatibility api for excel. The oovbaapi does the same thing but it has the advantage of being implemented in the calc module itself. As such the oovbaapi has greater scope for providing compatible features and behaviour because of it's ability to access internal calc objects and data structures.
- because of the language choice ( c++ ) there is also greater scope for providing additional functionality such as support for events etc.
How is it structured
- sc/source/ui/vba excel api implementation
- oovbaapi/org/openoffice/vba idl for some common constants and objects
- oovbaapi/org/openoffice/excel majority of the idl for excel compatibility api
- oovbaapi/org/openoffice/msforms a few control specific idl files