<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.openoffice.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fong</id>
	<title>Apache OpenOffice Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.openoffice.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Fong"/>
	<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/wiki/Special:Contributions/Fong"/>
	<updated>2026-05-25T14:36:50Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=136546</id>
		<title>VBA Stub</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=136546"/>
		<updated>2009-08-03T06:05:45Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== [possibly incomplete ] List of Writer Api which implementation does nothing ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Object&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Stub&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Note&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Application&lt;br /&gt;
| Application.EnableCancelKey&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks&lt;br /&gt;
| Bookmarks.DefaultSorting&lt;br /&gt;
&lt;br /&gt;
Bookmarks.ShowHidden&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty&lt;br /&gt;
| DocumentProperty.LinkToContent&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.LinkSource&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Name&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Type&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Find&lt;br /&gt;
| Find.ReplaceWildcards&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter&lt;br /&gt;
| HeaderFooter.LinkToPrevious&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Options&lt;br /&gt;
| Options.DefaultBorderLineStyle &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderLineWidth &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderColorIndex &lt;br /&gt;
&lt;br /&gt;
Options.ReplaceSelection &lt;br /&gt;
&lt;br /&gt;
Options.MapPaperSize &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyBulletedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyNumberedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeFormatListItemBeginning &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeDefineStyles &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyBulletedLists&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup&lt;br /&gt;
| PageSetup.SectionStart&lt;br /&gt;
&lt;br /&gt;
PageSetup.Gutter&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| View&lt;br /&gt;
| View.SplitSpecial&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents&lt;br /&gt;
| TableOfContents.TabLeader&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel&lt;br /&gt;
| ListLevel.LinkedStyle&lt;br /&gt;
&lt;br /&gt;
ListLevel.NumberFormat&lt;br /&gt;
&lt;br /&gt;
ListLevel.ResetOnHeight&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Document&lt;br /&gt;
| Document.Protect&lt;br /&gt;
&lt;br /&gt;
Document.ProtectionType&lt;br /&gt;
&lt;br /&gt;
Document.UpdateStylesOnOpen&lt;br /&gt;
&lt;br /&gt;
Document.PrintOut&lt;br /&gt;
&lt;br /&gt;
Document.HyphenationZone&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=136097</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=136097"/>
		<updated>2009-07-28T08:09:22Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  Fong || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  Fong || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=134952</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=134952"/>
		<updated>2009-07-16T07:20:07Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  Fong || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  Fong || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=133845</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=133845"/>
		<updated>2009-07-03T03:29:16Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=132711</id>
		<title>VBA Stub</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=132711"/>
		<updated>2009-06-23T03:15:12Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Api which implementation does nothing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== [possibly incomplete ] List of Writer Api which implementation does nothing ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Object&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Stub&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Note&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Application&lt;br /&gt;
| Application.EnableCancelKey&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks&lt;br /&gt;
| Bookmarks.DefaultSorting&lt;br /&gt;
&lt;br /&gt;
Bookmarks.ShowHidden&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty&lt;br /&gt;
| DocumentProperty.LinkToContent&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.LinkSource&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Name&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Type&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Find&lt;br /&gt;
| Find.ReplaceWildcards&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter&lt;br /&gt;
| HeaderFooter.LinkToPrevious&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Options&lt;br /&gt;
| Options.DefaultBorderLineStyle &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderLineWidth &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderColorIndex &lt;br /&gt;
&lt;br /&gt;
Options.ReplaceSelection &lt;br /&gt;
&lt;br /&gt;
Options.MapPaperSize &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyBulletedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyNumberedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeFormatListItemBeginning &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeDefineStyles &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyBulletedLists&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup&lt;br /&gt;
| PageSetup.SectionStart&lt;br /&gt;
&lt;br /&gt;
PageSetup.Gutter&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| View&lt;br /&gt;
| View.SplitSpecial&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents&lt;br /&gt;
| TableOfContents.TabLeader&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel&lt;br /&gt;
| ListLevel.LinkedStyle&lt;br /&gt;
&lt;br /&gt;
ListLevel.NumberFormat&lt;br /&gt;
&lt;br /&gt;
ListLevel.ResetOnHeight&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=132710</id>
		<title>VBA Stub</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=132710"/>
		<updated>2009-06-23T03:14:41Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Api which implementation does nothing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== [possibly incomplete ] List of Writer Api which implementation does nothing ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Object&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Stub&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Note&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Application&lt;br /&gt;
| Application.EnableCancelKey&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks&lt;br /&gt;
| Bookmarks.DefaultSorting&lt;br /&gt;
&lt;br /&gt;
Bookmarks.ShowHidden&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty&lt;br /&gt;
| DocumentProperty.LinkToContent&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.LinkSource&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Name&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Type&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Find&lt;br /&gt;
| Find.ReplaceWildcards&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter&lt;br /&gt;
| HeaderFooter.LinkToPrevious&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Options&lt;br /&gt;
| Options.DefaultBorderLineStyle &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderLineWidth &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderColorIndex &lt;br /&gt;
&lt;br /&gt;
Options.ReplaceSelection &lt;br /&gt;
&lt;br /&gt;
Options.MapPaperSize &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyBulletedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyNumberedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeFormatListItemBeginning &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeDefineStyles &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyBulletedLists&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup&lt;br /&gt;
| PageSetup.SectionStart&lt;br /&gt;
&lt;br /&gt;
PageSetup.Gutter&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| View&lt;br /&gt;
| View.SplitSpecial&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents&lt;br /&gt;
| TableOfContents.TabLeader&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel&lt;br /&gt;
| ListLevel.LinkedStyle&lt;br /&gt;
ListLevel.NumberFormat&lt;br /&gt;
ListLevel.ResetOnHeight&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=132135</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=132135"/>
		<updated>2009-06-18T09:11:44Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=130510</id>
		<title>VBA Stub</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=130510"/>
		<updated>2009-06-02T03:58:28Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Api which implementation does nothing */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== [possibly incomplete ] List of Writer Api which implementation does nothing ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Object&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Stub&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Note&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Application&lt;br /&gt;
| Application.EnableCancelKey&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks&lt;br /&gt;
| Bookmarks.DefaultSorting&lt;br /&gt;
&lt;br /&gt;
Bookmarks.ShowHidden&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty&lt;br /&gt;
| DocumentProperty.LinkToContent&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.LinkSource&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Name&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Type&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Find&lt;br /&gt;
| Find.ReplaceWildcards&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter&lt;br /&gt;
| HeaderFooter.LinkToPrevious&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Options&lt;br /&gt;
| Options.DefaultBorderLineStyle &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderLineWidth &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderColorIndex &lt;br /&gt;
&lt;br /&gt;
Options.ReplaceSelection &lt;br /&gt;
&lt;br /&gt;
Options.MapPaperSize &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyBulletedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyNumberedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeFormatListItemBeginning &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeDefineStyles &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyBulletedLists&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup&lt;br /&gt;
| PageSetup.SectionStart&lt;br /&gt;
&lt;br /&gt;
PageSetup.Gutter&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| View&lt;br /&gt;
| View.SplitSpecial&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents&lt;br /&gt;
| TableOfContents.TabLeader&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=129705</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=129705"/>
		<updated>2009-05-27T02:40:13Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=125832</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=125832"/>
		<updated>2009-05-13T09:30:28Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   || Fong || in progress ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=125607</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=125607"/>
		<updated>2009-05-13T06:28:51Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Column ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Columns ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeadersFooters ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGallery ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListGalleries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevel ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListLevels ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplate ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListTemplates ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revision ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Revisions ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=125304</id>
		<title>VBA Stub</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=VBA_Stub&amp;diff=125304"/>
		<updated>2009-05-12T09:20:57Z</updated>

		<summary type="html">&lt;p&gt;Fong: New page: === [possibly incomplete ] List of Writer Api which implementation does nothing ===   {| class=&amp;quot;prettytable&amp;quot; | &amp;#039;&amp;#039;&amp;#039;Object&amp;#039;&amp;#039;&amp;#039; | &amp;#039;&amp;#039;&amp;#039;Stub&amp;#039;&amp;#039;&amp;#039; | &amp;#039;&amp;#039;&amp;#039;Note&amp;#039;&amp;#039;&amp;#039;  |- | Application | Application.Enable...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== [possibly incomplete ] List of Writer Api which implementation does nothing ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Object&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Stub&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Note&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Application&lt;br /&gt;
| Application.EnableCancelKey&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks&lt;br /&gt;
| Bookmarks.DefaultSorting&lt;br /&gt;
&lt;br /&gt;
Bookmarks.ShowHidden&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty&lt;br /&gt;
| DocumentProperty.LinkToContent&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.LinkSource&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Name&lt;br /&gt;
&lt;br /&gt;
DocumentProperty.Type&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Find&lt;br /&gt;
| Find.ReplaceWildcards&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter&lt;br /&gt;
| HeaderFooter.LinkToPrevious&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Options&lt;br /&gt;
| Options.DefaultBorderLineStyle &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderLineWidth &lt;br /&gt;
&lt;br /&gt;
Options.DefaultBorderColorIndex &lt;br /&gt;
&lt;br /&gt;
Options.ReplaceSelection &lt;br /&gt;
&lt;br /&gt;
Options.MapPaperSize &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyBulletedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeApplyNumberedLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeFormatListItemBeginning &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatAsYouTypeDefineStyles &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyHeadings &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyLists &lt;br /&gt;
&lt;br /&gt;
Options.AutoFormatApplyBulletedLists&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup&lt;br /&gt;
| PageSetup.SectionStart&lt;br /&gt;
&lt;br /&gt;
PageSetup.Gutter&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| View&lt;br /&gt;
| View.SplitSpecial&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=122669</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=122669"/>
		<updated>2009-05-05T09:40:43Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Section ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   || Fong || in progress  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=121423</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=121423"/>
		<updated>2009-04-27T08:13:47Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  Fong || in progress&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||  ||  Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  npower || in progress   ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  npower || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=121422</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=121422"/>
		<updated>2009-04-27T08:12:47Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  Fong || in progress  Fong || in progress&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   Fong  || in progress  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=120905</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=120905"/>
		<updated>2009-04-22T02:27:20Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| Addins ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| Addin ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   || Fong || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=120000</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=120000"/>
		<updated>2009-04-16T02:00:59Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Documents ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=116373</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=116373"/>
		<updated>2009-03-20T09:15:13Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  Fong || in progress  ||  || &lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=116146</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=116146"/>
		<updated>2009-03-18T02:51:16Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=114765</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=114765"/>
		<updated>2009-03-04T05:40:22Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=114764</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=114764"/>
		<updated>2009-03-04T05:38:16Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   || Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=112523</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=112523"/>
		<updated>2009-02-20T08:18:55Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=107830</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=107830"/>
		<updated>2009-01-16T08:45:43Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  Fong || in progress   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   || Fong || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=107713</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=107713"/>
		<updated>2009-01-15T08:13:26Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   || npower || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  Fong || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=107287</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=107287"/>
		<updated>2009-01-13T07:25:31Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=106621</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=106621"/>
		<updated>2009-01-08T07:37:03Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=105672</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=105672"/>
		<updated>2008-12-26T09:44:08Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   || Fong  || in progress  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=105660</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=105660"/>
		<updated>2008-12-25T09:01:28Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   || Fong  || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=105482</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=105482"/>
		<updated>2008-12-22T04:09:00Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   || Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||Fong  || in progress||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=104815</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=104815"/>
		<updated>2008-12-15T09:00:35Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   || Fong || in progress  || ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||Fong  || in progress ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=104814</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=104814"/>
		<updated>2008-12-15T08:59:25Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   ||  || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||  || Fong || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101870</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101870"/>
		<updated>2008-12-09T06:35:32Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* [possibly incomplete ] List of Writer Objects to port from helperapi */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialog ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Dialogs ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Document ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperty ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| DocumentProperties ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Err ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Field ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Fields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FillFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Find ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Font ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| FormField ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| FormFields ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Frames ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| HeaderFooter ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| LineFormat ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| ListFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Global ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Office ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Options ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Pane ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Panes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraph ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Paragraphs ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ParagraphFormat ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| PageSetup ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Range ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Replacement ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Row ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Rows ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Selection ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Sections ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shape ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Shapes ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| ShapeRange ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Style ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| Styles ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| System ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Table ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Tables ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContent ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TableOfContents ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStop ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| TabStops ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Template ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| TextFrame ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variable ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Variables ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| View ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Window ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| WordBasic ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| WrapFormat ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101868</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101868"/>
		<updated>2008-12-09T06:29:19Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntries ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Border ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Borders ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmark ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Bookmarks ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cell ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Cells ||   ||  ||   ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBar ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBarButton ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| CommandBars ||   ||  ||  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101867</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101867"/>
		<updated>2008-12-09T06:25:49Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Writer Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| Application ||   ||  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| AutoTextEntry ||   ||  ||   ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101852</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101852"/>
		<updated>2008-12-09T03:09:54Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101851</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=101851"/>
		<updated>2008-12-09T03:04:15Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] || hanbo || in progress || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] || hanbo || in progress || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java  || sola, Amelia || complete || not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java  || sola, Amelia || complete ||not-tested ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  || penghang || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  || wanglibing || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===  [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting stared by? || Status || notes&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92420</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92420"/>
		<updated>2008-09-12T05:51:44Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] ||  ||   || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XColorFormat.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || xxxx  || sola || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || xxxx  || sola || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTextFrame.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===  [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting stared by? || Status || notes&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92418</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92418"/>
		<updated>2008-09-12T05:15:21Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  || seems complete ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] ||  ||   || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || xxxx  || sola || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || xxxx  || sola || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===  [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting stared by? || Status || notes&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92412</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92412"/>
		<updated>2008-09-12T05:07:57Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] ||  ||   || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XComment.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFont.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XInterior.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || xxxx  || sola || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || xxxx  || sola || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XOutline.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || Fong ||complete ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriersCollection.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSeriers.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheet.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XSheets.idl || xxxx  ||   || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  || complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindow.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWindows.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbook.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorkbooks.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|-&lt;br /&gt;
| XWorksheetfunction.idl || xxxx  ||  ||  complete ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===  [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting stared by? || Status || notes&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92407</id>
		<title>Porting notes</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Porting_notes&amp;diff=92407"/>
		<updated>2008-09-12T04:55:28Z</updated>

		<summary type="html">&lt;p&gt;Fong: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Things to watch out for ===&lt;br /&gt;
* The mapping of the vba constants is different. Take for example the &amp;lt;tt&amp;gt;xlGuess&amp;lt;/tt&amp;gt; constant, in VBA it&amp;#039;s fully qualified name is &amp;lt;tt&amp;gt;Excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt;, in the helperapi it&amp;#039;s &amp;lt;tt&amp;gt;com.sun.star.helper.constant.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; and in oovbaapi it&amp;#039;s &amp;lt;tt&amp;gt;org.openoffice.excel.XlYesNoGuess.xlGuess&amp;lt;/tt&amp;gt; &lt;br /&gt;
* All objects in the helperapi extend [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/HelperInterfaceAdaptor.java?rev=1.1 HelperInterfaceAdaptor], nothing similar (yet) exists in oovbaapi so this can be ignored in the implementation&lt;br /&gt;
* There are a quite few helper classes in the helperapi project e.g. &amp;lt;tt&amp;gt;RangeHelper.java&amp;lt;/tt&amp;gt; they shouldn&amp;#039;t be confused with the actual implementation objects we wish to port.&lt;br /&gt;
* classes and idl files of the same name can exist in multiple namespaces and this can be confusing. Because the helperapi was written with both the word and excel api(s) in mind there can be classes that share a common implementation and interfaces e.g.&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/calc/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/common/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
** &amp;lt;tt&amp;gt;com/sun/star/helper/writer/XShape.idl&amp;lt;/tt&amp;gt;&lt;br /&gt;
* Collections, these are handled differently see implementing a vba [[Porting notes#Collection|Collection]] in oovbaapi&lt;br /&gt;
* Every helperapi idl method defines [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/BasicErrorException.idl BasicErrorException] which allows and api method to transfer an error code and associated string paramater to basic.&lt;br /&gt;
&lt;br /&gt;
=== Hints for porting idl ===&lt;br /&gt;
==== Objects with Default Properties ====&lt;br /&gt;
This is something not handled by the helperapi but something you should be aware of when implementing a vba compatibility object. What is a default property, an example probably explains the concept better.&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;) = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 Range(&amp;quot;a1&amp;quot;).Value = &amp;quot;text&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Value&amp;lt;/tt&amp;gt; is a default property in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultProperty.idl XDefaultProperty.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Objects with Default Method ====&lt;br /&gt;
&lt;br /&gt;
Similar to above some vba objects have a default method e.g. the &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col(1).Name&lt;br /&gt;
&lt;br /&gt;
is a short cut for&lt;br /&gt;
&lt;br /&gt;
 set col = Sheets&lt;br /&gt;
 msgbox col.Item(1).Name&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; is a default method in the example above. We can provide similar behavior in basic with a compatibility api object ensuring the object implements [http://api.openoffice.org/source/browse/*checkout*/api/udkapi/com/sun/star/script/XDefaultMethod.idl XDefaultMethod.idl ]&lt;br /&gt;
&lt;br /&gt;
==== Porting Collection objects ====&lt;br /&gt;
Generally all collection objects have a &amp;lt;tt&amp;gt;Count&amp;lt;/tt&amp;gt; and an &amp;lt;tt&amp;gt;Item&amp;lt;/tt&amp;gt; method and additionally the behaviour mentioned above. Also Collection objects can be used in a &amp;lt;tt&amp;gt;For Each&amp;lt;/tt&amp;gt; loop. To cater for that a helper implementation object &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; provides the necessary information to the basic runtime to allow it to provide the classic vba &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; class syntax support. It also requires to be initialised by an XIndexAccess implementation. Additionally the class inheriting from  &amp;lt;tt&amp;gt;ScVbaCollectionBaseImpl&amp;lt;/tt&amp;gt; must provide the  translation between the object iterated ( via XIndexAccess ) and the corrosponding compatibilty object returned to openoffice basic via the the &amp;lt;tt&amp;gt;createCollectionObject&amp;lt;/tt&amp;gt; method.&lt;br /&gt;
&lt;br /&gt;
A example of a ported &amp;lt;tt&amp;gt;Collection&amp;lt;/tt&amp;gt; object can be found in the [[Porting example]] section&lt;br /&gt;
&lt;br /&gt;
=== [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting started by || Status || Notes&lt;br /&gt;
|-&lt;br /&gt;
| XAreas.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAutoFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AutoFilterImpl.java AutoFilterImpl] ||  ||   || there is a partial (untested) implementation in the porting example section, would be nice for some one to finish&lt;br /&gt;
|-&lt;br /&gt;
| XFilter.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FilterImpl.java FilterImpl.java]  ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XFilters.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/FiltersImpl.java FiltersImpl.java] ||  ||  || see above.&lt;br /&gt;
|-&lt;br /&gt;
| XAxes.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxesImpl.java]  ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxis.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesImpl.java AxisImpl.java]  || npower || in progress  ||&lt;br /&gt;
|-&lt;br /&gt;
| XAxisTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/AxesTitleImpl.java AxisTitleImpl.java] ||  npower || complete  || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XCharacters.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XCalc.idl || xxxx  || not required for porting see [[Application Object]] ||  || This is not a &amp;#039;real&amp;#039; object but in a collection of global method/attributes that probably should be part of the XApplication.idl interface&lt;br /&gt;
|-&lt;br /&gt;
| XChartObject.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectImpl.java ChartObjectImpl.java] || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XChartObjects.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartObjectsImpl.java ChartObjectsImpl.java] || npower || complete || not-tested &lt;br /&gt;
|-&lt;br /&gt;
| XChart.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartImpl.java ChartImpl.java] || npower || in progress || &lt;br /&gt;
|-&lt;br /&gt;
| XCharts.idl ||  [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartsImpl.java ChartsImpl.java]  ||  npower ||  in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XChartTitle.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/ChartTileImpl.java ChartTitleImpl.java]  || npower || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabel.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelImp.java DataLabelImpl.java] || npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XDataLabels.idl || [http://api.openoffice.org/source/browse/*checkout*/api/helperapi/impl/com/sun/star/helper/calc/DataLabelsImp.java DataLabelsImpl.java] ||  npower || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XFormatCondition.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormatConditions.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XFormat.idl || xxxx  || npower || complete  || not tested &lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreak.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XHPageBreaks.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || xxxx  || sola ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || xxxx  || sola ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPageBreak.idl || xxxx  ||  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPageSetup.idl XPageSetup.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PageSetupImpl.java PageSetupImpl]  || zhang ||&lt;br /&gt;
|-&lt;br /&gt;
|[http://api.openoffice.org/source/browse/api/helperapi/com/sun/star/helper/calc/XPane.idl XPane.idl] || [http://api.openoffice.org/source/browse/api/helperapi/impl/com/sun/star/helper/calc/PaneImpl.java PaneImpl]  || Jiao.Jianhua || calc complete||&lt;br /&gt;
|-&lt;br /&gt;
| XPoint.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XPoints.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XProtection.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTable.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XQueryTables.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XShape.idl || xxxx  || jiao.jianhua || in progress ||&lt;br /&gt;
|-&lt;br /&gt;
| XShapes.idl || xxxx  || jiao.jianhua  || calc complete, no full text ||&lt;br /&gt;
|-&lt;br /&gt;
| XStyle.idl || xxxx  ||  npower || complete || not tested&lt;br /&gt;
|-&lt;br /&gt;
| XStyles.idl || xxxx  || npower || inprogress ||&lt;br /&gt;
|-&lt;br /&gt;
| XTitle.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreak.idl || xxxx  ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| XVPageBreaks.idl|| xxxx  ||  ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===  [possibly incomplete ] List of Calc Objects to port from helperapi ===&lt;br /&gt;
{| style=&amp;quot;vertical-align:top; text-align:left; background-color:#efefef;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color:#d6d6d6;font-weight:bold;&amp;quot; &lt;br /&gt;
| Object || helperapi implementation name || Porting stared by? || Status || notes&lt;br /&gt;
|-&lt;br /&gt;
| XName.idl || NameImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
| XNames.idl || NamesImp.java || Amelia || complete || not-tested&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Missing attributes/methods ( common to helperapi objects ) to port ===&lt;br /&gt;
[[Application Object]]&lt;br /&gt;
&lt;br /&gt;
[[Range Object]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=DomainDeveloper&amp;diff=87554</id>
		<title>DomainDeveloper</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=DomainDeveloper&amp;diff=87554"/>
		<updated>2008-07-22T03:22:30Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* Developers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A mapping of names to OOo accounts.&lt;br /&gt;
&lt;br /&gt;
Abbrev.:&lt;br /&gt;
&lt;br /&gt;
* PL : Project Lead&lt;br /&gt;
* CL : Project Co-Lead&lt;br /&gt;
* CC : Community Council Member&lt;br /&gt;
* ESC : Engineering Steering Committee Member &lt;br /&gt;
* CVS : has write access to the OOo CVS repository&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
=== Developers ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable sortable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name || CVS || @openoffice.org || [[IRC Communication]] || Notes || Affiliation&lt;br /&gt;
|-&lt;br /&gt;
| Volker Ahrendt|| X || va||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Kai Ahrens|| X || ka || Kai_Ahrens ||PL Graphic Applications||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Gene Anaya||   || ganaya||||||&lt;br /&gt;
|-&lt;br /&gt;
| Joost Andrae|| X || ja||ja||CL qa, release testing en-US builds and releasing builds||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Eric Bachard|| X || ericb||ericb2|| CL Education, Mac OSX/Linux PPC port ||Education project&lt;br /&gt;
|-&lt;br /&gt;
| Kai Backman||  || kaib ||KaiB||||&lt;br /&gt;
|-&lt;br /&gt;
| Sascha Ballach|| X || sab||||||&lt;br /&gt;
|-&lt;br /&gt;
| Jayant Balraj Madavi||   || jayant_madavi||aZEN_JM||Connectivity / Database||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Jörg Barfurth|| X || jb||JoergB||Configuration Util||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Omer Bar-or|| X || cremlae||cremlae||Mac porting||Google Summer of Code&lt;br /&gt;
|-&lt;br /&gt;
| Mathias Bauer|| X || mba||||PL Writer, CL Framework, XML||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Thorsten Behrens|| X || thb||thorsten||vcl/impress/toolkit visionary||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Thomas Benisch|| X || tbe||||Scripting framework||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Stephan Bergmann|| X || sb||||CL UDK||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Andreas Bille|| X || abi||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Éric Bischoff|| X || ebischoff||ebischoff||KDE A/B driver||Bureau Cornavin&lt;br /&gt;
|-&lt;br /&gt;
| Nick Blievers|| X || nick||||IRIX||&lt;br /&gt;
|-&lt;br /&gt;
| Daniel Boelzle|| X || dbo||||UNO core/bridges/packages||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Oliver Bolte|| X || obo||||RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Rafaella Braconi||   || coni||Rafaella ||PL l10n, Globalization Program Manager||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Michael Brauer|| X || mib||||PL XML||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Oliver Braun|| X || obr||obr||System Integration/Accessibility Hacker||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Andreas Bregas|| X || ab||||StarBasic||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Jörg Brunsmann||   || jbrunsmann||||UDK||&lt;br /&gt;
|-&lt;br /&gt;
| Jörg Budischewski||   || jbu||PyUNO hacker||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Peter Burow|| X  || pb||plumbumm||UI||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Aidan Butler||   || aidan||||XML filters||&lt;br /&gt;
|-&lt;br /&gt;
| Giuseppe Castagno || X || beppec56 || beppec56_  or beppe_c || PDF output&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ScottCarr|Scott Carr]] || X  || kcarr||kcarr||PL Documentation||Progbits&lt;br /&gt;
|-&lt;br /&gt;
| Colin Charles||   || drbyte||bytee||Malaysian native-lang project||bytebot.net&lt;br /&gt;
|-&lt;br /&gt;
| Jinhong Chen ||   || chainchen ||   || || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Xiuzhi Cheng|| X || xzcheng || xiuzhi|| ESC,Xml,ODF|| [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Behrend Cornelius|| X || bc||||Wizards||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Michael Cziebalski||   || mci||||||&lt;br /&gt;
|-&lt;br /&gt;
| [[User:pdefilippis|Pierre de Filippis]]|| X || pdefilippis||aliscafo||Mac OSX native porting||&lt;br /&gt;
|-&lt;br /&gt;
| Andrew Dent|| X ||ace_dent||ace_dent||ui/custom_images||&lt;br /&gt;
|-&lt;br /&gt;
| Naren Devaiah||   || ||ndev||Performance||Intel Corporation&lt;br /&gt;
|-&lt;br /&gt;
| Quangang Dong||   || donqg || dongqg || Layout  || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Nitin Dongre||   || ||nitin_BITS||||Novell, Inc.(intern)&lt;br /&gt;
|-&lt;br /&gt;
| Radek Doulik||   || radekdoulik||rodo_||Canvas hacker||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Carsten Driesner|| X || cd|| cd_oo ||PL Framework||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Yunfen Du || X || duyunfen|| dyf|| Base ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| Herbert Duerr|| X || hdu||hdu_hh||GSL||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Oliver Düsterhoff|| X || od||Writer||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Bernd Eilers|| X || bei||rfc821||EIS||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| René Engelhard|| X || rene||_rene_||config_office, Debian packager||Debian&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Pereriksson|Per Eriksson]] || || pereriksson || || CL, MarCon Sweden ||&lt;br /&gt;
|-&lt;br /&gt;
| Yaqiong Fang || X  || fangyq || fangyq|| Graphics|| [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Hubert Figuière|| X || hub || hub || PPTX || Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Andre Fischer|| X || af||||Impress||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Uwe Fischer || X || ufi || ufiooo || Application Help || Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Ken Foskey||   || waratah||waratah||config_office/dmake man||slug.org.au&lt;br /&gt;
|-&lt;br /&gt;
| Duncan Foster||   || dfoster||||||&lt;br /&gt;
|-&lt;br /&gt;
| David Fraser||   || davidfraser||davidfraser||South African translations, multilingual builds||translate.org.za&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Nf|Nils Fuhrmann]]||   || nf||SunNF||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Martin Gallwey|| X || mtg||marty_||XML/Writer/packaging||&lt;br /&gt;
|-&lt;br /&gt;
| Pierre-Andre Galmes || || pagalmes || pagalmes || Chart2 ||StarXpert&lt;br /&gt;
|-&lt;br /&gt;
| Tony Galmiche|| X || tonygalmiche||||CL FR native-lang project||&lt;br /&gt;
|-&lt;br /&gt;
| Sunil Gandhi||   || ||tyro||||NOSIP&lt;br /&gt;
|-&lt;br /&gt;
| Peng Gao ||  || Gao Peng|| Gao Peng || writer|| [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Zemin Gao ||  || gaozemin|| gaozm || Calc || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Sophie Gautier|| X || sgauti|| sophi ||PL FR native-lang project, CC ||.&lt;br /&gt;
|-&lt;br /&gt;
| Vladimir Glazounov|| X || vg||||RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Laurent Godard || X || laurentgodard || lgodard || CC, PL Extensions, Fr Native-lang Project || inDesko/Nuxeo &lt;br /&gt;
|-&lt;br /&gt;
| Jody Goldberg|| X || jodygoldberg||jody||[[Calc]] spreadsheet-ness||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Dirk Grobler|| X || dg||||Database Access||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Sg|Steffen Grund]]|| X || sg|| || NetBeans Integration ||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Bettina Haberer||   || bh||||RFEOwner||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Ingrid Halama|| X || iha||||Chart||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Chris Halls|| X || haggai||haggai||Debian packager&amp;amp;amp;misc. hacker||Credativ Ltd., Debian&lt;br /&gt;
|-&lt;br /&gt;
| Gregor Hartmann|| X || gh|| Lachs ||Testtool, gsicheck, buildbot||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Bustamam Harun||   || bustamam||||Malaysian stuff||&lt;br /&gt;
|-&lt;br /&gt;
| Kevin Hendricks|| X || khendricks||||PL Lingucomponent, PowerPC||&lt;br /&gt;
|-&lt;br /&gt;
| Con Hennessy||   || cphennessy||cph2 or cph_||hacker &amp;amp;amp; former council person||OpenApp&lt;br /&gt;
|-&lt;br /&gt;
| Ivo Hinkelmann|| X || ihi||ivo||l10n tooling/general/RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Eric Hoch|| X || maveric||mav_eric||Mac Porting||&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Lutz_Hoeger|Lutz Hoeger]]|| X || lh ||lutzh||PL [http://ux.openoffice.org User Experience]||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Jan Holešovský|| X || kendy||kendy||KDE integration||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Martin Hollmichel|| X || mh||Ratte/Nesshof||Build Maestro, PL External, Tools, Porting, CC||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Karl Hong|| X || khong||||i18n, CJK expert||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Matthias Huetsch|| X || mhu||||Performance/strategy, PL UCB, CC, ESC||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Michael Hönnig|| X || mi||||PL API||&lt;br /&gt;
|-&lt;br /&gt;
| [[User:icobgr|Hristo Hristov]] ||   || icobgr || icobgr || PL Bulgarian native-lang project ||&lt;br /&gt;
|-&lt;br /&gt;
| Sven Jacobi|| X || sj||||Escherwizard||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Jörg Jahnke||   || jj||||tooling||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Christian Jansen||   || cj ||||Menu and Toolbar?||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Ocke Janssen|| X || oj||Base||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Pavel Janík|| X || pjanik||paveljanik||PL Czech native-lang project, CL l10n, CC, ESC, l10n builds||&lt;br /&gt;
|-&lt;br /&gt;
| Berry Jia|| X || berryjia||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Chuang Jiang ||   || jiangc ||   || || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Jingchuan Kang||   || kangjingchuan || jingchuan || Surrogates in Unicode || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Pascal Junck||   || pjunck||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:pj@openoffice.org|Peter Junge]]|| X || pj|| peter13j|| OOo community contact for my Chinese Employer, QA||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Christian Junker||   || Cyb||christianju||API||Trees For Life&lt;br /&gt;
|-&lt;br /&gt;
| Etsushi Kato || X || ekato ||   || Mac OS X Port || Independent &lt;br /&gt;
|-&lt;br /&gt;
| Hirano Kazunari||   || khirano||||Japanese||&lt;br /&gt;
|-&lt;br /&gt;
| Dhananjay Keskar|| X || dkeskar ||dkeskar||Performance,Buildbot,cat-herder||Intel Corporation&lt;br /&gt;
|-&lt;br /&gt;
| Robert Kinsella||   || rkinsella||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Volodymyr Khrystynych||   || volody||||XML Filter||&lt;br /&gt;
|-&lt;br /&gt;
| Matthias Klose||   || doko||doko||Ubuntu, gcc, python packager||Canonical, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Laszlo Kovacs||   || lkovacs||||Documentation||&lt;br /&gt;
|-&lt;br /&gt;
| Tobias Krause|| X || tkr||||ucb||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Martin Kretzschmar|| X || mkretzschmar||martink||Gnome / Debian||Student&lt;br /&gt;
|-&lt;br /&gt;
| Will Lachance||   || wlach||wlach_||Word Perfect File Filters||Net Integration Technologies, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Thomas Lange|| X || tl||tl13||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Lars Langhans|| X || lla||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Hans-Joachim Lankenau|| X || hjs||ause||dmake makefile expert, RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Németh László|| X || nemeth||||PL lingucomponent||&lt;br /&gt;
|-&lt;br /&gt;
| Jakob Lechner|| X || jakob_lechner||||Writer||Fabalabs&lt;br /&gt;
|-&lt;br /&gt;
| Michael Leibowitz||  X || mikeleib ||mikeleib||performance||Intel Corporation&lt;br /&gt;
|-&lt;br /&gt;
| Wind Li|| X || windly||||Address books||&lt;br /&gt;
|-&lt;br /&gt;
|Jian Li ||   || lijian || lijian|| Writer|| [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Yuan  Li ||   || liyuan ||   || PyUNO, Async dialogs || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Weike Liang ||   || liangweike || liangweike || Graphics || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Ping Liao||   || pliao||||||&lt;br /&gt;
|-&lt;br /&gt;
| Tor Lillqvist|| X || tml||tml_||||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Joachim Lingner|| X || jl||||Java, CLI||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Christian Lippka|| X || cl || cl ||Graphic Applications||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Mindy Liu||   || mindyliu||||||&lt;br /&gt;
|-&lt;br /&gt;
|Jianli Liu ||  || liujl|| liujianli || Graphics|| [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|[[User:liutao | LiuTao]]   || X  || liutao || liutao  || PyUNO, Async dialogs,slideshow,modularization in SW || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|YU Liu || X  || ch2000liuy || LiuYU  || Swriter || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Yuhua Liu ||  || liuyuhua|| yuhua|| ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Dl|Dieter Loeschky]]|| X || dl ||||PL: ODF Toolkit||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Philipp Lohmann|| X || pl||PhilippL||VCL/X11 (GSL) hacker||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Michel Loiseleur|| || mloiseleur|| coren`|| Bugfixes ||Linagora&lt;br /&gt;
|-&lt;br /&gt;
| Jackson Low|| X || xxjack12xx||||Porting||&lt;br /&gt;
|-&lt;br /&gt;
| Patrick Luby||   || pluby||||Mac||&lt;br /&gt;
|-&lt;br /&gt;
|Jingrong Luo ||  || Luo Jingrong|| Luo Jingrong|| ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Xugang Lv ||   || lvxg || lvxg || XML Writer || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Prasad Madhav || X || pmadhav || pmadhav || Buildbot || Intern@Intel &lt;br /&gt;
|-&lt;br /&gt;
| Babak Mahbod||   || bmahbod||||||&lt;br /&gt;
|-&lt;br /&gt;
| Martin Maher||   || mmaher||||Writer &amp;amp;amp; Filter chap||&lt;br /&gt;
|-&lt;br /&gt;
| Nakata Maho|| X || maho||_maho_||PL QA, PL JA, FreeBSD guy||Independent&lt;br /&gt;
|-&lt;br /&gt;
|Yonggang Mao || X || maoyonggang|| maoyg|| Calc ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Yue Lv ||  || lvyue || lvyue || Calc ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| John Marmion|| X || jmarmion||||||&lt;br /&gt;
|-&lt;br /&gt;
| Andreas Martens|| X || ama||||PL Writer||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
|-|&lt;br /&gt;
| Shane M Mathews|| X || smmathews|| smmathews ||[[Impress:_OpenGL_rendered_transitions]]||student&lt;br /&gt;
|-&lt;br /&gt;
| Frank Mau|| X || fma||||tooling||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:smsm1|Shaun McDonald]] || X || smsm1 || shaunmcdonald || Mac Port, buildbot MacPort1 || Graduate&lt;br /&gt;
|-&lt;br /&gt;
| Caolán McNamara|| X || cmc||caolan||CL Writer &amp;amp;amp; Filter man||RedHat, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Michael Meeks|| X || mmeeks||michael_||ugly hack-er, ESC||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Frank Meies|| X || fme||||Writer||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Federico Mena-Quintero||   || federicomena||federico||perfectionist||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Ismael Merzaq|| X || isma87||ismael_||Mac OSX native porting||Student&lt;br /&gt;
|-&lt;br /&gt;
| Michael Mi||   || mmi||||||&lt;br /&gt;
|-&lt;br /&gt;
| Björn Michaelsen|| X || b_michaelsen ||Sweetshark|| ||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Björn Milcke|| X || bm||bm_||Chart||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Petr Mladek||   || pmladek||pmladek||SUSE RPMs, ooo-build releases||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Cyrille Moureaux|| X || cyrillem||Cyrille||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Mmp|Matthias Müller-Prove]]|| X || mmp|| mprove|| [[User Experience]], http://ux.openoffice.org || Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Takashi Nakamoto|| || bluedwarf|| || ||&lt;br /&gt;
|-&lt;br /&gt;
| Jan Navrátil || X || jnavrati || jnavrati || || RedHat, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Niklas Nebel|| X || nn||||PL [[Calc]]||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Christoph Neumann|| X || cn||||[[UnoApiTest]]||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Frank Neumann|| X || fne||||MacPort||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| NicelKM|| X || mnicel||nicel||||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Jan Nieuwenhuizen|| X || jcn||janneke||Layout code, hacker ||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Bertram Nolte||   || bnolte||||||&lt;br /&gt;
|-&lt;br /&gt;
| Tomas O&amp;#039;Connor||   || toconnor||||Scripting Framework||&lt;br /&gt;
|-&lt;br /&gt;
| Maximilian Odendahl|| X  || mod||mod||[[Notes2]]|| Student / SEPT-Solutions&lt;br /&gt;
|-&lt;br /&gt;
| Lars Oppermann|| X || lo||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Rodrigo Parra Novo|| X || rodarvus||rodarvus||Gnumeric/Abiword OpenDocument Format support and port to Maemo||INdT (Instituto Nokia de Tecnologia)&lt;br /&gt;
|-&lt;br /&gt;
| Edward Peterlin|| X || OPENSTEP||||Mac||&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Fpe|Frank Peters]]|| X || fpe||||CL Documentation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Christof Pintaske|| X || cp||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Ron Piterman||   || rpiterman||||||&lt;br /&gt;
|-&lt;br /&gt;
| Sebastien Plisson|| X  || plipli||plipli||Developer on Aqua port||OO Aqua Port&lt;br /&gt;
|-&lt;br /&gt;
| Noel Power||   || npower||noelp||VBA Interop, Scripting||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Nikolai Pretzell|| X || np || ||Autodoc, code quality||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Jonathan Pryor|| || jpryor || jonp || || Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Canghua Qu||  || quch || Canghua || AutoTest, Graphics || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Volker Quetschke|| X || vq||vq||W32-tcsh/bash build environment and dmake Hacker, ESC||Gravity Waves&lt;br /&gt;
|-&lt;br /&gt;
| Tino Rachui|| X || tra||tinor||GSL/Unix Hacker||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Kr|Kay Ramme]]|| X || kr||||PL UDK||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:ErAck|Eike Rathke]]|| X || er||erAck||CL [[Calc]], engine; CL i18n; stricken with number formatter||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Michael Rauch|| X || mrauch||||NetBSD||&lt;br /&gt;
|-&lt;br /&gt;
| Jens-Heiner Rechtien|| X || hr||blauwal||RE; OOo SCM (CVS, CWS tooling); Porting; Compilers||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Daniel Rentz|| X || dr|| drr ||[[Calc]] Excel filter, UI||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Florian Reuter|| X || flr||||Writer filters||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Georg Richter|| X || grichter||georg||Base, native MySQL driver||MySQL AB&lt;br /&gt;
|-&lt;br /&gt;
| G. Roderick Singleton||   || grsingleton||grsingleton||Documentation||pathtech.org&lt;br /&gt;
|-&lt;br /&gt;
| Hennes Rohling|| X || hro||||GSL &amp;amp;amp; Util||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Bibek Sahu||   || Bibek||bibek||Impress pieces||Trees For Life&lt;br /&gt;
|-&lt;br /&gt;
| Andreas Schlüns|| X || as||||Framework||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Ingo Schmidt|| X || is||||(Native) Installation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Jsc|J&amp;amp;uuml;rgen Schmidt]]|| X || jsc||jsc||PL API, CL Extensions, UNO, SDK||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Stephan Schäfer|| X || ssa||ssa||VCL||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Frank Schönheit|| X || fs||FrankS||Database Access, Forms||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Stella Schulze|| X || sts||||Visual Design||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Julian Seward || || sewardj || || valgrind ||&lt;br /&gt;
|-&lt;br /&gt;
| Darragh Sherwin||   || dsherwin||darragh||E-Legislation / E-GovSystems||Propylon&lt;br /&gt;
|-&lt;br /&gt;
|Lei shi ||  || shilei|| sl || Graphics|| [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Zhoubo  Shi ||   || shizhoubo ||   || || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Raul Siddhartha||   || rsiddhartha||raul||GTK File Selector||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Sarah Smith||   || ssmith||||||&lt;br /&gt;
|-&lt;br /&gt;
| [[User:mox|Mox Soini]] || X || mox || Moxed || Mac Porting || &lt;br /&gt;
|-&lt;br /&gt;
| Rajesh Sola||   || rajeshsola||sola||misc.||NOSIP&lt;br /&gt;
|-&lt;br /&gt;
| Kai Sommerfeld|| X || kso||||manager &amp;amp;amp; hacker||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Oliver Specht|| X || os||||PL UI||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Jörg Spindler||   || jspindler||||||&lt;br /&gt;
|-&lt;br /&gt;
| Fridrich Štrba|| X || fridrich_strba||Fridrich||Word Perfect Hacker||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| Keith Stribley|| X || kstribley||||Graphite fonts, Myanmar l10n||&lt;br /&gt;
|-&lt;br /&gt;
| Ulf Stroehler||   || us||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Muthusuba|Muthu Subramanian]]|| X || muthusuba||muthusuba||misc.||&lt;br /&gt;
|-&lt;br /&gt;
| Louis Suárez-Potts||   || louis||louis||Community Manager||Collab.net&lt;br /&gt;
|-&lt;br /&gt;
| Claus Sørensen||   || cs||c26n,cHBs,chbs||Danish Localization and Project Management Tool(oopm)||ProFOSS&lt;br /&gt;
|-&lt;br /&gt;
|Quanfa Tang ||  || tqfa|| tangquanfa|| Calc || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| David Tardon || X || dtardon || dtardon || || [[Red Hat Inc.]]&lt;br /&gt;
|-&lt;br /&gt;
| Stefan Taxhet|| X || st||stx12||CC, interpersonal problem fixer||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Armin Theissen||   || armin||||||&lt;br /&gt;
|-&lt;br /&gt;
| Caio Tiago Oliveira|| X || asrail||asrail||CL QA, release testing pt-BR builds||BrOffice.org&lt;br /&gt;
|-&lt;br /&gt;
| Jan Tietjens||   || tietjens||||||&lt;br /&gt;
|-&lt;br /&gt;
| Rüdiger Timm|| X || rt|| rtimm ||RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:mt|Malte Timmermann]]|| X || mt|| Malte || Accessibility, Security, Performance||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Gerhard Tonn||   || tonn||||s390||&lt;br /&gt;
|-&lt;br /&gt;
| Willem van Dorp||   || willem.vandorp||||||&lt;br /&gt;
|-&lt;br /&gt;
| Tom Verbeek|| X || tv||||Wizards, Art team||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Sander Vesik||   || svesik||||||&lt;br /&gt;
|-&lt;br /&gt;
| Daniel Vogelheim|| X || dvo||||XML||&lt;br /&gt;
|-&lt;br /&gt;
| Mikhail Voitenko|| X || mav||mav||Framework||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Robert Vojta|| X || rvojta||rvojta||VBA Interop||&lt;br /&gt;
|-&lt;br /&gt;
| Dirk Völzke|| X || dv||||Installation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Sparcmoz|Jim Watson]]|| X || sparcmoz|| sparcmoz||GNU Linux sparc porter||clug.org.au&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Weiz |Zhao Wei ]] ||   || weiz || weiz || chart, AODL  || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Armin Weiss|| X || aw||||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Gerd Weiss|| X || gm||||RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Dan Williams|| X || fa||dcbw||Mac et. al. hacker||RedHat, Inc.&lt;br /&gt;
|-&lt;br /&gt;
|[[User:wuy|Yan Wu]] || X || wuy ||   ||Framework || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Stephan Wunderlich|| X || sw||||||&lt;br /&gt;
|-&lt;br /&gt;
|Dehua Xu ||   || xudehua || xudh  || Release || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Kohei Yoshida|| X || kohei||kohei_||[[Calc]] hacker, Calc optimization solver developer||Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| George Zahopoulos|| X || georgez||||||&lt;br /&gt;
|-&lt;br /&gt;
| Kurt Zenker|| X || kz||smoketester||RE||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
|Huajun Zhang ||  || zhanghuajun|| zhanghj|| SW ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|[[User:Zhangxiaofei|Xiaofei Zhang]]||  || Zhangxiaofei || zhangxiaofei/FelixZ || [[Framework]] ||[[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
|Jianwei Zhao ||   || zhaojianwei || zhaojianwei ||  Swriter  || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Sheng zhao|| X  || jacky23 ||   ||OdfToolKit_odf4j || [[Beijing Redflag Chinese 2000 Software Co., Ltd.|Beijing Redflag CH2000]]&lt;br /&gt;
|-&lt;br /&gt;
| Claudio F Filho||   || filhocf||filhocf||Brazilian portuguese Localization||BrOffice.org&lt;br /&gt;
|-&lt;br /&gt;
| Xiaoyang Yu||   || || ||Disk block reordering||Intel Corporation &lt;br /&gt;
|- &lt;br /&gt;
| Antonio Xu|| X || antoxu || antoxu || Async dialogs, PRC improvements || Intel Corporation&lt;br /&gt;
|-&lt;br /&gt;
| Rail Aliev || X  || rail || rail ||  Ru and Tr NL Co-lead || Infra-Resource &lt;br /&gt;
|-&lt;br /&gt;
| Jeremy Zheng|| X || zhiming || Jeremy || Async dialogs, PRC improvements || Intel Corporation&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Schmidtm|Matthias Schmidt]] ||   || schmidtm || schmidtm || Mac OSX Aqua Port || Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Yuri Dario ||   || ydario || Paperino || OS/2 Port || Serenity Systems intl&lt;br /&gt;
|-&lt;br /&gt;
| Fong Lin || X  || pflin || Fong  || VBA Interop, Scripting, CJK Enhancement || Novell, Inc.&lt;br /&gt;
|-&lt;br /&gt;
| [[User:jza|Alexandro Colorado]]|| X || jza || jza|| CL [[OOoES|ES]] || &lt;br /&gt;
|-&lt;br /&gt;
| Sunil Amitkumar Janki || || sjanki || sjanki || GNU Linux mipsel porter || &lt;br /&gt;
|-&lt;br /&gt;
| [[User:Rescue|Joey Stanford]] ||  || Rescue/k0fcc || Rinchen || CL [http://eo.openoffice.org/ Esperanto native-lang project] || [http://canonical.com Canonical] ||&lt;br /&gt;
|-&lt;br /&gt;
| Mingfei Jia || X  || jiamingfei ||   || Lotus Smart Suite filter || IBM Corp.&lt;br /&gt;
|-&lt;br /&gt;
| Xing Li || X  || lixxing ||   || Accessibility || IBM Corp.&lt;br /&gt;
|-&lt;br /&gt;
| Wei Guo SHI || X  || shiwg ||   || Accessibility and Smart Suite filter || IBM Corp.&lt;br /&gt;
|-&lt;br /&gt;
| Takashi Ono || X  || tono ||   || MinGW port || Independent&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== QA Engineers ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;2&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;0&amp;quot; style=&amp;quot;margin: 1em 1em 1em 0; background: #f9f9f9; border: 1px #aaa solid; border-collapse: collapse;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Name ||CVS||@openoffice.org || [[IRC Communication]] || Interested modules || Notes || Affiliation&lt;br /&gt;
|-&lt;br /&gt;
| Stefan Baltzer||||sba||||writer||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Thorsten Bosbach||X||tbo||||framework, testautomation||framework test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Oliver Craemer||X||oc||||[[Calc]], testautomation||calc test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Helge Delfs||X||hde||||testautomation, writer||Test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Fredrik Haegg||X||fha||||writer, testautomation||Writer test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Hasan Ilter||||hi||||writer, printing, pdf export||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Michael Rüß||||mru||||writer, word im/export||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Éric Savary||||es||||writer, accessibility||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:jsi|Joerg Sievers]]||X||jsi||jsi_sun||chart, xml, testautomation||Chart2, XML test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Joerg Skottke||X||jsk||skotti||framework, qa/qatesttool||Framework test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Marc Neumann||X||msc||||database, testautomation||Database access test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Chris Lukasiak||||clu||||database||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Frank Stecher||||fst||||[[Calc]]||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Jack Warchold|||| jw||||writer, import/export filters||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Uwe Luebbers||||ul||||framework||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Thorsten Martens||||tm||||framework||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Olaf Felka|||| of||||framework, installation||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Thomas Klarhoefer||||kla||||chart||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Wolfram Garten||X|| wg||||draw, impress||draw, impress test automation||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| Christian Guenther||||cgu||||draw, impress||||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Thorsten_Ziehm|Thorsten Ziehm]]||||| thorstenziehm||||||QA lead||Sun Microsystems&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We are tracking pending JCAs in the document [[Pending JCAs]].&lt;br /&gt;
&lt;br /&gt;
== Related Pages ==&lt;br /&gt;
* [[Commit Rights]]&lt;br /&gt;
* [[Contributing Patches]]&lt;br /&gt;
* [[User Experience Community]]&lt;br /&gt;
* A map of OOo developers around the world is available at http://www.frappr.com/ooodev, please add yourself to the map if you&amp;#039;re involved in OOo development. It&amp;#039;s just fun to see who&amp;#039;s where :-)&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Alpha Centauri]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=35825</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=35825"/>
		<updated>2007-06-21T07:48:19Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* Appendix */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
For example, ODF V1.2 section 15.5.7 defines the schema of the left and right margins for a paragraph:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; measurement is added in &amp;quot;length&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;length&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;data type=&amp;quot;string&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;pattern&amp;quot;&amp;gt;-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)|(em))&amp;lt;/param&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
The schema of top and bottom margins for a paragraph is: (ODF V1.2 section 15.2.20).&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-vertical-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-vertical-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-top&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;nonNegativeLength&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-bottom&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;nonNegativeLength&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Percentage unit can be reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
Both OpenXML and UOF (Chinese office file format) support Character/Line measurement unit.&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=CJK_Group&amp;diff=35776</id>
		<title>CJK Group</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=CJK_Group&amp;diff=35776"/>
		<updated>2007-06-21T03:15:01Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* Your idea to improve CJK functionality, usability and accessibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= About this wiki page =&lt;br /&gt;
OpenOffice.org CJK Group will like to use this page to communicate each other and share ideas and resources among Chinese, Japanese and Korean native-language projects.&lt;br /&gt;
Your good ideas, advices, suggestions, requests, proposals will be always appreciated and welcome.  Feel free to edit this page and add your ideas, useful information and links.&lt;br /&gt;
&lt;br /&gt;
= CJK Native-Language Group =&lt;br /&gt;
&lt;br /&gt;
The CJK Group, as the name shows, consists of Chinese, Japanese and Korean native-language projects of OpenOffice.org, who can share experiences on common L10N and I18N issues and pool some ressources such as the work on some parts of QA. In the mean time, this group will also foster collaboration between the three projects on a marketing level, helping the spread of OpenOffice.org all over Asia.&lt;br /&gt;
&lt;br /&gt;
== Your idea to improve CJK functionality, usability and accessibility ==&lt;br /&gt;
* See [[Firefly&amp;#039;s OOo CJK Patches]] for some of the patches to be submitted&lt;br /&gt;
* [[Redflag CH2000 To-Do list]]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=76247 Text grid enhancement for better CJK support]&lt;br /&gt;
* [[Character unit]]&lt;br /&gt;
* [[Writer compatability tab page enhancement]]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=72655 Units of rulers on Writer can be in characters and lines]&lt;br /&gt;
* [feel free to add your idea here]&lt;br /&gt;
&lt;br /&gt;
== ODF Toolkit Project ==&lt;br /&gt;
&lt;br /&gt;
http://odftoolkit.openoffice.org/&lt;br /&gt;
&lt;br /&gt;
== News and Events ==&lt;br /&gt;
&lt;br /&gt;
* [http://marketing.openoffice.org/ooocon2006/ September 11-13, OpenOffice.org Conference in Lyon]&lt;br /&gt;
&lt;br /&gt;
== CJK Common Issues ==&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=54320 Paragraph Style&amp;#039;s Default settings]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=17337 Chinese punctuation mark misalinged]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=69855 WW8: Japanese numbering types imported as Western types]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=70031 Automatic numbering does not recognize numberings in Korean]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=70033 Mysterious &amp;#039;Apply attributes&amp;#039; action before Korean(IME) character input]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=71022 MS PPT import: CJK words in callouts sometime rotating]&lt;br /&gt;
* [http://www.openoffice.org/issues/show_bug.cgi?id=65520 cjk embolden using freetype api FT_GlyphSlot_Embolden]&lt;br /&gt;
&lt;br /&gt;
== Extensions ==&lt;br /&gt;
* [[Extensions]]&lt;br /&gt;
&lt;br /&gt;
== Localization ==&lt;br /&gt;
* [[HSQLDB_Localization]]&lt;br /&gt;
&lt;br /&gt;
== QA and TCM ==&lt;br /&gt;
&lt;br /&gt;
== Marketing ==&lt;br /&gt;
[[Strategic_Marketing_Plan]]&lt;br /&gt;
&lt;br /&gt;
== Global Campaign ==&lt;br /&gt;
* [http://why.openoffice.org/ Take a Test Drive - Keep the Car!]&lt;br /&gt;
* [http://why.openoffice.org/getlegal.html Get Legal - Get OpenOffice.org]&lt;br /&gt;
&lt;br /&gt;
== Major Deployment in Asia ==&lt;br /&gt;
* [[Major OpenOffice.org Deployments]] in the world&lt;br /&gt;
&lt;br /&gt;
= To Developers =&lt;br /&gt;
To all developers who are interested in improving OpenOffice.org CJK support, please don&amp;#039;t forget to sign the [[Joint Copyright Assignment]] (JCA). Without [[JCA]] submission, Sun cannot accept your patch legally even if they want to.&lt;br /&gt;
&lt;br /&gt;
[[Category:CJK issues]]&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34294</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34294"/>
		<updated>2007-06-07T09:53:43Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
For example, ODF V1.2 section 15.5.7 defines the schema of the left and right margins for a paragraph:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; measurement is added in &amp;quot;length&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;length&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;data type=&amp;quot;string&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;pattern&amp;quot;&amp;gt;-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)|(em))&amp;lt;/param&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
The schema of top and bottom margins for a paragraph is: (ODF V1.2 section 15.2.20).&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-vertical-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-vertical-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-top&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;nonNegativeLength&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-bottom&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;nonNegativeLength&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Percentage unit can be reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34293</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34293"/>
		<updated>2007-06-07T09:53:12Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
For example, ODF V1.2 section 15.5.7 defines the schema of the left and right margins for a paragraph:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; measurement is added in &amp;quot;length&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;length&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;data type=&amp;quot;string&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;pattern&amp;quot;&amp;gt;-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)|(em))&amp;lt;/param&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
The schema of top and bottom margins for a paragraph is: (ODF V1.2 section 15.2.20).&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-vertical-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-vertical-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-top&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;nonNegativeLength&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-bottom&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;nonNegativeLength&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Percentage unit is reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34292</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34292"/>
		<updated>2007-06-07T09:46:01Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
For example, in section 15.5.7 the schema of the left and right margins for a paragraph is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; measurement is added in &amp;quot;length&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;length&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;data type=&amp;quot;string&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;pattern&amp;quot;&amp;gt;-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)|(em))&amp;lt;/param&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
Percentage unit is reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34291</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34291"/>
		<updated>2007-06-07T09:45:32Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
For example, in section 15.5.7 the schema of the left and right margins for a paragraph is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; measurement is added in &amp;quot;length&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;length&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;data type=&amp;quot;string&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;pattern&amp;quot;&amp;gt;-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)|(&amp;#039;&amp;#039;em&amp;#039;&amp;#039;))&amp;lt;/param&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
Percentage unit is reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34290</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34290"/>
		<updated>2007-06-07T09:44:34Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
For example, in section 15.5.7 the schema of the left and right margins for a paragraph is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; measurement is added in &amp;quot;length&amp;quot;&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;length&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;data type=&amp;quot;string&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;pattern&amp;quot;&amp;gt;-?([0-9]+(\.[0-9]*)?|\.[0-9]+)((cm)|(mm)|(in)|(pt)|(pc)|(px)|(em))&amp;lt;/param&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;/data&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
Percentage unit is reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34289</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34289"/>
		<updated>2007-06-07T09:40:00Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;define name=&amp;quot;style-paragraph-properties-attlist&amp;quot; combine=&amp;quot;interleave&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;ref name=&amp;quot;common-horizontal-margin-attlist&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;define name=&amp;quot;common-horizontal-margin-attlist&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-left&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
	&amp;lt;optional&amp;gt;&lt;br /&gt;
		&amp;lt;attribute name=&amp;quot;fo:margin-right&amp;quot;&amp;gt;&lt;br /&gt;
			&amp;lt;choice&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;length&amp;quot;/&amp;gt;&lt;br /&gt;
				&amp;lt;ref name=&amp;quot;percent&amp;quot;/&amp;gt;&lt;br /&gt;
			&amp;lt;/choice&amp;gt;&lt;br /&gt;
		&amp;lt;/attribute&amp;gt;&lt;br /&gt;
	&amp;lt;/optional&amp;gt;&lt;br /&gt;
&amp;lt;/define&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
Percentage unit is reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
	<entry>
		<id>https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34283</id>
		<title>Character unit</title>
		<link rel="alternate" type="text/html" href="https://wiki.openoffice.org/w/index.php?title=Character_unit&amp;diff=34283"/>
		<updated>2007-06-07T09:13:57Z</updated>

		<summary type="html">&lt;p&gt;Fong: /* ODF support */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Character unit overview =&lt;br /&gt;
In CJK, especailly in China, character is used as a unit to measure some paragraph attributes, such as indentation, line spacing and tab stop. etc. Character unit is most useful in processing Chinese. For example, users are used to use two characters as the indent of first line of the paragraph.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;＊＊大家好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;大家好，才是真的好&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
With character unit, users need not worry about the layout confusion due to font size changing.&lt;br /&gt;
&lt;br /&gt;
For line spacing of paragraph, line unit is used.&lt;br /&gt;
&lt;br /&gt;
= Feature =&lt;br /&gt;
&lt;br /&gt;
= Implementation =&lt;br /&gt;
&lt;br /&gt;
= File format support =&lt;br /&gt;
== ODF support ==&lt;br /&gt;
As mentioned above, Characters unit is most used in left and right margins for a paragraph, and the indentation of first line for a paragraph. Line unit is used in top and bottom margins for a paragraph. &lt;br /&gt;
&lt;br /&gt;
While ODF does not support character unit and line unit yet. &lt;br /&gt;
&lt;br /&gt;
* Character Unit&lt;br /&gt;
In order to support character unit, &amp;quot;em&amp;quot; measurement should be added support in ODF.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;em&amp;quot; is a unit-based value of relative length that is measured against the current value of the font-size property.&lt;br /&gt;
&lt;br /&gt;
There is only one relative unit of measure, the &amp;quot;em&amp;quot;. The definition of &amp;quot;1em&amp;quot; is equal to the current font size. For example, a value of &amp;quot;1.25em&amp;quot; is 1.25 times the current font size.&lt;br /&gt;
&lt;br /&gt;
When an em measurement is used in an expression, it is converted according to the font-size value of the current property&amp;#039;s context. The result of the expression is an absolute length.&lt;br /&gt;
&lt;br /&gt;
* Line Unit&lt;br /&gt;
Percentage unit is reused as line unit to specify the top and bottom margins for a paragraph, just like the fix line height in section 15.5.1. For example, a value of &amp;quot;125%&amp;quot; is 1.25 times for the highest character in a line.&lt;br /&gt;
&lt;br /&gt;
= Appendix =&lt;br /&gt;
== Open XML support ==&lt;br /&gt;
* Line Spacing in Line Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Spacing&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;beforeLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Above Paragraph IN Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;afterLines&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Spacing Below Paragraph in Line Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
  &amp;lt;xsd:complexType name=&amp;quot;CT_Ind&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;leftChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Left Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;rightChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Right Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;hangingChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Indentation Removed From First Line in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
    &amp;lt;xsd:attribute name=&amp;quot;firstLineChars&amp;quot; type=&amp;quot;ST_DecimalNumber&amp;quot; use=&amp;quot;optional&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:documentation&amp;gt;Additional First Line Indentation in Character Units&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
      &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
    &amp;lt;/xsd:attribute&amp;gt;&lt;br /&gt;
  &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UOF support ==&lt;br /&gt;
* Line Spacing In Line Units. (Part of schema)&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;xsd:element name=&amp;quot;段间距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Line Spacing&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段前距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Above Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Above Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0200&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0196&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:element name=&amp;quot;段后距&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:documentation&amp;gt;Line Spacing Below Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:element name=&amp;quot;相对值&amp;quot;&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:documentation&amp;gt; Spacing Below Paragraph In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0203&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                                &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0197&amp;quot;/&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0058&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
     &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Indentation In Character Units (Part of schema)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;[xml]&lt;br /&gt;
&amp;lt;xsd:complexType name=&amp;quot;缩进类型&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:documentation&amp;gt;Indentation of Paragraph&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
        &amp;lt;xsd:all&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;左&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Left Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Left Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0186&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0182&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;右&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt;Right Indentation&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt;Right Indentation In Relative Value&amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0188&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0183&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                &amp;lt;xsd:element name=&amp;quot;首行&amp;quot; minOccurs=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:documentation&amp;gt; First Line Indentation &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                        &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:choice&amp;gt;&lt;br /&gt;
                                        &amp;lt;xsd:element name=&amp;quot;相对&amp;quot;&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:annotation&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:documentation&amp;gt; First Line Indentation In Relative Value &amp;lt;/xsd:documentation&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:annotation&amp;gt;&lt;br /&gt;
                                                &amp;lt;xsd:complexType&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute name=&amp;quot;值&amp;quot; type=&amp;quot;xsd:float&amp;quot; use=&amp;quot;required&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0190&amp;quot;/&amp;gt;&lt;br /&gt;
                                                        &amp;lt;xsd:attribute ref=&amp;quot;uof:attrList&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;值&amp;quot;/&amp;gt;&lt;br /&gt;
                                                &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                                        &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
                                &amp;lt;/xsd:choice&amp;gt;&lt;br /&gt;
                                &amp;lt;xsd:attribute ref=&amp;quot;uof:locID&amp;quot; use=&amp;quot;required&amp;quot; fixed=&amp;quot;t0184&amp;quot;/&amp;gt;&lt;br /&gt;
                        &amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
                &amp;lt;/xsd:element&amp;gt;&lt;br /&gt;
        &amp;lt;/xsd:all&amp;gt;&lt;br /&gt;
&amp;lt;/xsd:complexType&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Fong</name></author>
	</entry>
</feed>