記憶體呈現

org.eclipse.debug.ui.memoryRenderings

3.1 - 置換 memoryRenderingTypes 延伸點,在 3.0 中,這仍只是實驗性質

容許外掛程式為記憶體區塊提出任意呈現,並且將記憶體區塊連結到呈現。例如,呈現可以將記憶體區塊的原始位元組轉換成 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=

"範例呈現"

id=

"com.example.sampleRendering"

class=

"com.example.SampleRenderingTypeDelegate"

>

</renderingType>

<renderingBindings renderingIds=

"com.example.sampleRendering"

>

<enablement>

<instanceof value=

"com.example.SampleMemoryBlock"

/>

</enablement>

</renderingBindings>

</extension>

在上面的範例中,會定義一個叫做「範例呈現」的新呈現類型。類別 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 類別完整名稱。
  • 除錯平台會提供下列呈現類型:

  • 十六進位呈現(呈現 ID:org.eclipse.debug.ui.rendering.raw_memory)
  • ASCII 呈現(呈現 ID:org.eclipse.debug.ui.rendering.ascii)
  • 帶正負號整數呈現(呈現 ID:org.eclipse.debug.ui.rendering.signedint)
  • 不帶正負號的整數呈現(呈現 ID:org.eclipse.debug.ui.rendering.unsignedint)

  • 除錯平台提供了一個記憶體視圖來代管呈現。