blob: 27fdce8decf76b8834d80aeb20ca8cb2b15370a6 [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.debug.ui">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.debug.ui" id="memoryRenderings" name="Memory Renderings"/>
</appInfo>
<documentation>
Allows plug-ins to contribute arbitrary renderings for memory blocks. For example, a rendering may translate raw bytes of a memory block into ASCII characters.
</documentation>
</annotation>
<include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>
<element name="extension">
<complexType>
<choice>
<element ref="renderingType" minOccurs="0" maxOccurs="unbounded"/>
<element ref="renderingBindings" minOccurs="0" maxOccurs="unbounded"/>
<element ref="defaultRenderings" minOccurs="0" maxOccurs="unbounded"/>
</choice>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
a fully qualified identifier of the target extension point
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>
an optional identifier of the extension instance
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
an optional name of the extension instance
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="renderingType">
<annotation>
<documentation>
This element defines a rendering. A rendering is comprised of an id, a name, an optional rendering factory, and an optional list of rendering properties.
</documentation>
</annotation>
<complexType>
<attribute name="name" type="string" use="required">
<annotation>
<documentation>
human-readable name of this rendering type
</documentation>
<appInfo>
<meta.attribute translatable="true"/>
</appInfo>
</annotation>
</attribute>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
unique identifier for this rendering
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.debug.ui.memory.IMemoryRenderingFactory&lt;/code&gt;
</documentation>
<appInfo>
<meta.attribute kind="java"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="renderingBindings">
<annotation>
<documentation>
Binds memory blocks with available renderings.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="enablement" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="renderingIds" type="string">
<annotation>
<documentation>
comma delimited list of memory renderings available for the associated type of memory block. When unspecified a &lt;code&gt;class&lt;/code&gt; must be specified. Only one of &lt;code&gt;renderingIds&lt;/code&gt; and &lt;code&gt;class&lt;/code&gt; may be specified.
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string">
<annotation>
<documentation>
fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.debug.ui.memory.IMemoryRenderingTypeProvider&lt;/code&gt;, allowing for dynamic rendering bindings. When unspecified, &lt;code&gt;renderingIds&lt;/code&gt; must be specified. Only one of &lt;code&gt;renderingIds&lt;/code&gt; and &lt;code&gt;class&lt;/code&gt; may be specified.
</documentation>
<appInfo>
<meta.attribute kind="java"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="defaultRenderings">
<annotation>
<documentation>
Specifies the default renderings to create for memory blocks.
</documentation>
</annotation>
<complexType>
<sequence>
<element ref="enablement" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="renderingIds" type="string">
<annotation>
<documentation>
comma delimited list of of memory renderings to be created by default for memory blocks of the associated type. Memory renderings are specified via their &lt;code&gt;renderingId&lt;/code&gt;. An equivalent rendering binding must exist for a default rendering to be considered. When unspecified, &lt;code&gt;primaryId&lt;/code&gt; must be specified.
</documentation>
</annotation>
</attribute>
<attribute name="primaryId" type="string">
<annotation>
<documentation>
specifies the id of the rendering to be considered primary. When there is more than one default rendering bound to a memory block, the UI may use the information to determine which rendering should be made visible (i.e the primrary one).
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
3.1 - replacement for memoryRenderingTypes extension point which was considered experimental in 3.0
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
The following is an example for defining a new rendering type.
&lt;p&gt;
&lt;pre&gt;
&lt;extension
id=&quot;org.eclipse.debug.ui.renderings&quot;
name=&quot;Sample Rendering Type&quot;
point=&quot;org.eclipse.debug.ui.memoryRenderingTypes&quot;&gt;
&lt;rendering
name=&quot;Sample Rendering&quot;
renderingId=&quot;com.example.sampleRendering&quot;
renderingFactory=&quot;com.example.SampleRenderingsFactory&quot;&gt;
&lt;renderingProperty
name=&quot;viewTabFactory&quot;
value=&quot;com.example.SampleViewTabFactory&quot;&gt;
&lt;/renderingProperty&gt;
&lt;viewBinding viewIds=&quot;org.eclipse.debug.ui.MemoryView.RenderingViewPane&quot;/&gt;
&lt;/rendering&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
In the above example, a new rendering type, Sample Rendering, is defined. This rendering type supports the rendering view pane from the Memory View.
&lt;br&gt;&lt;br&gt;
The following is an example for allowing Sample Rendering to be displayed in the rendering view pane from the Memory View.
&lt;p&gt;
&lt;pre&gt;
&lt;extension
id=&quot;com.example&quot;
name=&quot;Sample Rendering Extension&quot;
point=&quot;org.eclipse.debug.ui.memoryRenderingTypes&quot;&gt;
&lt;renderingBinding
renderingIds=&quot;com.example.sampleRendering&quot;&gt;
&lt;enablement&gt;
&lt;instanceof value=&quot;com.example.SampleMemoryBlock&quot;/&gt;
&lt;/enablement&gt;
&lt;/renderingBinding&gt;
&lt;defaultRenderings
renderingIds=&quot;com.example.sampleRendering&quot;&gt;
&lt;enablement&gt;
&lt;instanceof value=&quot;com.example.SampleMemoryBlock&quot;/&gt;
&lt;/enablement&gt;
&lt;/defaultRenderings&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
In the above example, the Sample Rendering is defined as a valid rendering for SampleMemoryBlock. Whenever SampleMemoryBlock is created in the Memory View, a Sample Rendering will be created.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
&lt;p&gt;
&lt;li&gt;Value of the attribute &lt;b&gt;renderingFactory &lt;/b&gt; must be a fully qualifed name of a Java class that implements &lt;b&gt;IMemoryRenderingFactory&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;Value of the attribute &lt;b&gt; value &lt;/b&gt; from the &lt;b&gt;viewTabFactory&lt;/b&gt; rendering property must be a fully qualifed name of a Java class that implements &lt;b&gt;IMemoryViewTabFactory&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;Value of the attribute &lt;b&gt;instanceof&lt;/b&gt; from the &lt;b&gt; enablement &lt;/b&gt; element must be a fully qualified name of a Java class that implements the interface &lt;b&gt;IMemoryBlock&lt;/b&gt;.&lt;/li&gt;
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
The debug platform provides the following rendering types:&lt;br&gt;
&lt;li&gt;Hex Rendering (rendering id: org.eclipse.debug.ui.rendering.raw_memory)&lt;/li&gt;
&lt;li&gt;ASCII Rendering (rendering id: org.eclipse.debug.ui.rendering.ascii)&lt;/li&gt;
&lt;li&gt;Signed Integer Rendering (rendering id: org.eclipse.debug.ui.rendering.signedint)&lt;/li&gt;
&lt;li&gt;Unsigned Integer Rendering (rendering id: org.eclipse.debug.ui.rendering.unsignedint) &lt;/li&gt;
&lt;br&gt;
The debug platform provides a memory view to host renderings.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
Copyright (c) 2004 IBM Corporation and others.&lt;br&gt;
All rights reserved. This program and the accompanying materials are made
available under the terms of the Common Public License v1.0 which
accompanies this distribution, and is available at
&lt;a href=&quot;http://www.eclipse.org/legal/cpl-v10.html&quot;&gt;http://www.eclipse.org/legal/cpl-v10.html&lt;/a&gt;
</documentation>
</annotation>
</schema>