内存呈示

org.eclipse.debug.ui.memoryRenderings

3.1 - 替换在 3.0 中认为是实验性的 memoryRenderingTypes 扩展点

允许插件为内存块提供任意的呈示,并将内存块绑定至呈示。例如,呈示可以将内存块的原始字节转换成 ASCII 字符。

<!ELEMENT extension (renderingType* | renderingBindings*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT renderingType EMPTY>

<!ATTLIST renderingType

name  CDATA #REQUIRED

id    CDATA #REQUIRED

class CDATA #REQUIRED>

此元素定义呈示类型。



<!ELEMENT renderingBindings (enablement*)>

<!ATTLIST renderingBindings

renderingIds CDATA #IMPLIED

primaryId    CDATA #IMPLIED

class        CDATA #IMPLIED

defaultIds   CDATA #IMPLIED>

将内存块与可用的呈示绑定在一起。



以下是用于定义新的呈示类型和绑定的示例。

<extension point=

"org.eclipse.debug.ui.memoryRenderings"

>

<renderingType name=

"Sample Rendering"

id=

"com.example.sampleRendering"

class=

"com.example.SampleRenderingTypeDelegate"

>

</renderingType>

<renderingBindings renderingIds=

"com.example.sampleRendering"

>

<enablement>

<instanceof value=

"com.example.SampleMemoryBlock"

/>

</enablement>

</renderingBindings>

</extension>

在以上示例中,定义了一种新的呈示类型“Sample Rendering”。类 com.example.SampleRenderingTypeDelegate 实现 org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate 并且将用来创建此类型的新呈示。该呈示将绑定至 com.exmaple.SampleMemoryBlock 的实例。

  • renderingType 元素中 class 属性的值必须是实现 org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate 的 Java 类的标准名称。
  • renderingBindings 元素中 class 属性的值必须是实现 org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider 的 Java 类的标准名称。
  • 调试平台提供以下呈示类型:

  • 十六进制呈示(呈示标识:org.eclipse.debug.ui.rendering.raw_memory)
  • ASCII 呈示(呈示标识:org.eclipse.debug.ui.rendering.ascii)
  • 有符号整数呈示(呈示标识:org.eclipse.debug.ui.rendering.signedint)
  • 无符号整数呈示(呈示标识:org.eclipse.debug.ui.rendering.unsignedint)

  • 调试平台提供一个内存视图来主管呈示。