<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.harlamenkov.ru/index.php?action=history&amp;feed=atom&amp;title=EN%2Fdocumentation%2Fbasic_guide%2Funo_tools</id>
	<title>EN/documentation/basic guide/uno tools - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.harlamenkov.ru/index.php?action=history&amp;feed=atom&amp;title=EN%2Fdocumentation%2Fbasic_guide%2Funo_tools"/>
	<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=EN/documentation/basic_guide/uno_tools&amp;action=history"/>
	<updated>2026-11-11T13:51:22Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://wiki.harlamenkov.ru/index.php?title=EN/documentation/basic_guide/uno_tools&amp;diff=15913&amp;oldid=prev</id>
		<title>Sancho at 11:31, 2 September 2011</title>
		<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=EN/documentation/basic_guide/uno_tools&amp;diff=15913&amp;oldid=prev"/>
		<updated>2011-09-02T11:31:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 11:31, 2 September 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l8&quot; &gt;Line 8:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 8:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|api=block&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|api=block&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;__NOTOC__&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The question remains as to which objects — or services if we are going to remain with UNO terminology — support which properties, methods and interfaces and how these can be determined. In addition to this guide, you can get more information about objects from the following sources: the &amp;lt;tt&amp;gt;supportsService&amp;lt;/tt&amp;gt; method, the debug methods as well as the Developer's Guide, and the API reference.  &lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The question remains as to which objects — or services if we are going to remain with UNO terminology — support which properties, methods and interfaces and how these can be determined. In addition to this guide, you can get more information about objects from the following sources: the &amp;lt;tt&amp;gt;supportsService&amp;lt;/tt&amp;gt; method, the debug methods as well as the Developer's Guide, and the API reference.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Sancho</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.harlamenkov.ru/index.php?title=EN/documentation/basic_guide/uno_tools&amp;diff=15912&amp;oldid=prev</id>
		<title>Sancho: Основной текст</title>
		<link rel="alternate" type="text/html" href="https://wiki.harlamenkov.ru/index.php?title=EN/documentation/basic_guide/uno_tools&amp;diff=15912&amp;oldid=prev"/>
		<updated>2011-09-02T11:28:28Z</updated>

		<summary type="html">&lt;p&gt;Основной текст&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;section begin=title /&amp;gt;&amp;lt;noinclude&amp;gt;{{DISPLAYTITLE:&amp;lt;/noinclude&amp;gt;Tools for Working With UNO&amp;lt;noinclude&amp;gt;}}&amp;lt;/noinclude&amp;gt;&amp;lt;section end=title /&amp;gt;{{BreadCrumbL10n}}&lt;br /&gt;
&lt;br /&gt;
{{Documentation/BASICGuideTOC&lt;br /&gt;
|ShowPrevNext=block&lt;br /&gt;
|ShowPrevPage=block&lt;br /&gt;
|PrevPage=EN/documentation/basic_guide/modules_services_and_interfaces&lt;br /&gt;
|NextPage=EN/documentation/basic_guide/interface_overview&lt;br /&gt;
|api=block&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The question remains as to which objects — or services if we are going to remain with UNO terminology — support which properties, methods and interfaces and how these can be determined. In addition to this guide, you can get more information about objects from the following sources: the &amp;lt;tt&amp;gt;supportsService&amp;lt;/tt&amp;gt; method, the debug methods as well as the Developer's Guide, and the API reference. &lt;br /&gt;
&lt;br /&gt;
== The &amp;lt;tt&amp;gt;supportsService&amp;lt;/tt&amp;gt; Method ==&lt;br /&gt;
&lt;br /&gt;
A number of UNO objects support the &amp;lt;tt&amp;gt;supportsService&amp;lt;/tt&amp;gt; method, with which you can establish whether an object supports a particular service. The following call, for example, determines whether the &amp;lt;tt&amp;gt;TextElement&amp;lt;/tt&amp;gt; object supports the &amp;lt;idl&amp;gt;com.sun.star.text.Paragraph&amp;lt;/idl&amp;gt; service.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;oobas&amp;quot;&amp;gt;&lt;br /&gt;
Ok = TextElement.supportsService(&amp;quot;com.sun.star.text.Paragraph&amp;quot;)&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Debug Properties ==&lt;br /&gt;
&lt;br /&gt;
Every UNO object knows what properties, methods and interfaces it already contains. {{OOo}} Basic provides properties that return these in the form of a string containing a list. The corresponding properties are: &lt;br /&gt;
&lt;br /&gt;
;&amp;lt;tt&amp;gt;DBG_properties&amp;lt;/tt&amp;gt;:returns a string containing all properties of an object&lt;br /&gt;
;&amp;lt;tt&amp;gt;DBG_methods&amp;lt;/tt&amp;gt;:returns a string containing all methods of an object &lt;br /&gt;
;&amp;lt;tt&amp;gt;DBG_supportedInterfaces&amp;lt;/tt&amp;gt;:returns a string containing all interfaces which support an object.&lt;br /&gt;
&lt;br /&gt;
The following program code shows how &amp;lt;tt&amp;gt;DBG_properties&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;DBG_methods&amp;lt;/tt&amp;gt; can be used in real-life applications. It first creates the &amp;lt;idl&amp;gt;com.sun.star.frame.Desktop&amp;lt;/idl&amp;gt; service and then displays the supported properties and methods in message boxes.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;oobas&amp;quot;&amp;gt;&lt;br /&gt;
Dim Obj As Object&lt;br /&gt;
Obj = createUnoService(&amp;quot;com.sun.star.frame.Desktop&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
MsgBox Obj.DBG_Properties&lt;br /&gt;
MsgBox Obj.DBG_methods&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When using &amp;lt;tt&amp;gt;DBG_properties&amp;lt;/tt&amp;gt;, note that the function returns all properties that the services offered by the object can theoretically support. No assurances are, however, provided for whether these can also be used by the object in question. In very rare cases, before calling up some property, use the &amp;lt;tt&amp;gt;IsEmpty&amp;lt;/tt&amp;gt; function to check whether it is actually available.&lt;br /&gt;
&lt;br /&gt;
== Debugging tools ==&lt;br /&gt;
Using the '''&amp;lt;tt&amp;gt;DBG_&amp;lt;/tt&amp;gt;''' properties is a very crude method to discover the contents of an API objects.&lt;br /&gt;
&lt;br /&gt;
The watch window of the Basic IDE can display the properties of a Uno object (but not the methods, not the interfaces).&lt;br /&gt;
&lt;br /&gt;
To display all information available from an object and link to the corresponding API documentation, use instead &amp;lt;b&amp;gt;[[EN/extensions_development_basic#X-Ray_tool|Xray tool]] or [http://extensions.services.openoffice.org/project/MRI MRI tool]&amp;lt;/b&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{{VBAnote|{{OOo}} Basic does '''not''' provide code completion. Only at run-time can you find out which properties or methods are available for an object. All the above debug tools work on a running program. }}&lt;br /&gt;
&lt;br /&gt;
== API Reference ==&lt;br /&gt;
&lt;br /&gt;
More information about the available services, and their interfaces, methods and properties can be found in the [http://api.openoffice.org/docs/common/ref/com/sun/star/module-ix.html reference for the {{OOo}} API].&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
{{PDL1}}&lt;/div&gt;</summary>
		<author><name>Sancho</name></author>
		
	</entry>
</feed>