Presentation is loading. Please wait.

Presentation is loading. Please wait.

Novell ® VBA Interoperability roundup Noel Power OpenOffice developer

Similar presentations


Presentation on theme: "Novell ® VBA Interoperability roundup Noel Power OpenOffice developer"— Presentation transcript:

1 Novell ® VBA Interoperability roundup Noel Power OpenOffice developer noel.power@novell.com

2 Quick Review

3 © Novell, Inc. All rights reserved. 3 History Started in response to customer demand Releases – SUSE 10.1 ( first appearance ) – SUSE SLED 10 ( first supported version ) Started VBA Interoperability incubator project – http://vba.openoffice.org or – http://wiki.services.openoffice.org/wiki/VBA http://wiki.services.openoffice.org/wiki/VBA Sun & Novell agree to support a single solution – Lots of bits upstreamed, lots more to go

4 © Novell, Inc. All rights reserved. 4 Architecture Modified Openoffice.org basic runtime – Running with in a special VBA compatability mode, the basic runtime can run native VBA code. ( Andreas Breagas does some fine work helping here as well ) VBA Excel api (C++) uno wrapper around existing Openoffice.org uno api – In the VBA compatibility mode the Basic runtime is aware of the wrapper api and its various globals and entry points etc. Supporting tweaks in core code – Mostly in calc but also, basctl, svx, scripting and basic ( others ?)

5 © Novell, Inc. All rights reserved. 5 What works Large chunks of the key objects of the VBA Excel Api – Range – Worksheet – Workbook... etc. Support for VBA syntax exotica – Default methods & properties,Array of array etc. syntax – Object Modules/Userforms – Increased runtime function support Interaction with controls – Macro event handlers for both Form and OLE controls

6 What's new

7 © Novell, Inc. All rights reserved. 7 WorkBook/Worksheet event support Good – Workbook/Worksheet events centralized ( can be enabled/disabled easily ) - Demo – Pretty good coverage of Workbook/Worksheet events Bad – Events are pushed ( could impact performance ) – Will need to be reworked eventually.

8 © Novell, Inc. All rights reserved. 8 Object Modules What are they? – Key abstraction for binding builtin application objects ( Worksheet, Workbook ) with the basic runtime – Core building block for Userforms – Provide all sorts of fiddley behavior > pseudo inheritance by allowing the core application object to be extended. New procedures can only be accessed via fully qualified names e.g. ( Sheet1.myProcedure ) > Container for event handler routines – Should allow a 'better' event handling solution, the ObjectModule should register interest in the various events based on the presence of the event handlers.

9 © Novell, Inc. All rights reserved. 9 UserForms Lots of tweaking of existing api ( controls ) Life cycle fun – Special initialize & terminate event handlers – Special load/unload behavior Binary import improvements – Progress bar – Misc tweaks to importer due to userform effort Control enhancements – [ Row|Source ]Control attributes for ListBox, ComboBox ( demo – listbox ) – spin-button

10 © Novell, Inc. All rights reserved. 1010 Miscellaneous improvements Module Properties – Formally only supported by class modules – Now supported for any module type Embedded Image Feature – Form controls now support embedded images in addition to linked ones ( thanks to Frank Schonheit for review and help ) > Now it's possible to Import MSO documents that contain images in controls > Previously Images in controls in an openoffice document were lost once the document was transported to a different location, this no longer needs to be the case

11 © Novell, Inc. All rights reserved. 1 Whats Next Support compatibility mode in Openoffice.org Basic xml – Get rid of the the same source options – Support missing required vba info ( codename ) Improve Userform & Controls compatibility Extend api coverage further Export support for macros (???) – Some difficulties with this though

12 What can you do to help

13 © Novell, Inc. All rights reserved. 1313 Help with testing – Write a testdocument > Examples at sc/source/ui/vba/testvba/TestDocuments Send macro snippets that don't work – Please, sensible small self complete contained examples ( in an Excel document preferably ) Help extend the compatability api ( you know you want to ) – Join the effort see the contact info

14 © Novell, Inc. All rights reserved. 1414 Contact Info Noel Power – Mail: Noel dot Power at Novell.com – IRC: service Freenode, channel #go-oo, nick noelp Pei Feng Lin – Mail: pflin at Novell.com – IRC: service Freenode, channel #go-oo, nick fong_

15 Unpublished Work of Novell, Inc. All Rights Reserved. This work is an unpublished work and contains confidential, proprietary, and trade secret information of Novell, Inc. Access to this work is restricted to Novell employees who have a need to know to perform tasks within the scope of their assignments. No part of this work may be practiced, performed, copied, distributed, revised, modified, translated, abridged, condensed, expanded, collected, or adapted without the prior written consent of Novell, Inc. Any use or exploitation of this work without authorization could subject the perpetrator to criminal and civil liability. General Disclaimer This document is not to be construed as a promise by any participating company to develop, deliver, or market a product. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. Novell, Inc. makes no representations or warranties with respect to the contents of this document, and specifically disclaims any express or implied warranties of merchantability or fitness for any particular purpose. The development, release, and timing of features or functionality described for Novell products remains at the sole discretion of Novell. Further, Novell, Inc. reserves the right to revise this document and to make changes to its content, at any time, without obligation to notify any person or entity of such revisions or changes. All Novell marks referenced in this presentation are trademarks or registered trademarks of Novell, Inc. in the United States and other countries. All third-party trademarks are the property of their respective owners.


Download ppt "Novell ® VBA Interoperability roundup Noel Power OpenOffice developer"

Similar presentations


Ads by Google