簡介部分配置

org.eclipse.ui.intro.config

3.0

這個延伸點的目的是登錄簡介配置。 這個配置可以提供給定的簡介構成要素的呈現實作和內容。 簡介是在工作台第一次啟動時出現,而且是從「說明」功能表中加以選擇。 簡介的目的,通常是把建置在 Eclipse 上的產品,介紹給使用者。

簡介是分成幾頁加以組織,通常是反映特定種類的簡介資料。 比方說,「新功能」頁面可能是介紹前幾版以來的新概念或是新功能。 由簡介配置所定義的內容, 可以利用 org.eclipse.ui.intro.configExtension 延伸點, 從其他外掛程式加以參照和延伸。

<!ELEMENT extension (handle? , config+)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT config (presentation)>

<!ATTLIST config

introId CDATA #REQUIRED

id      CDATA #REQUIRED

content CDATA #REQUIRED>

您可以利用配置元素,來配置可以自訂的「簡介部分」。 配置元素必須指定 ID、簡介 ID 和內容檔。 簡介內容檔是一個 XML 檔,主要在說明簡介的網頁、群組和鏈結。



<!ELEMENT presentation (implementation+ , launchBar?)>

<!ATTLIST presentation

home-page-id    CDATA #REQUIRED

standby-page-id CDATA #IMPLIED>

呈現元素定義簡介部分呈現方式的所有可能實作。 它可以定義一或多個實作。但在啟動時,會根據實作的 os/ws 屬性只會選擇一個實作。 否則,就是選擇第一個沒有定義 os/ws 屬性的實作。



<!ELEMENT implementation (head?)>

<!ATTLIST implementation

kind  (swt|html)

style CDATA #IMPLIED

os    CDATA #IMPLIED

ws    CDATA #IMPLIED>

要呈現優異的平台體驗,有兩種實作方式。 一種是「SWT 瀏覽器」型,另一種是「UI 格式」型。 您可以配置自訂的簡介部分,讓它根據現有的 OS 和 WS,挑選其中一種呈現方式。 實作的類型有 swt 和 html 兩種。



<!ELEMENT launchBar (handle? , shortcut*)>

<!ATTLIST launchBar

location (left|bottom|right|fastview) "fastview"

bg       CDATA #IMPLIED

fg       CDATA #IMPLIED>

啟動列與 'switchToLaunchBar' 指令共同使用。執行時,該指令會關閉簡介,並在主要視窗的其中一個調整區域建立啟動列。 啟動列會包含至少一個按鈕,讓使用者能夠返回上一個簡介頁面。 選擇性地,還可以包含其他使用 shortcut 元素定義的按鈕。這些按鈕可用來快速移至某些簡介頁面。自 3.1 後



<!ELEMENT shortcut EMPTY>

<!ATTLIST shortcut

tooltip CDATA #IMPLIED

icon    CDATA #REQUIRED

url     CDATA #REQUIRED>

會在簡介啟動列中為每個捷徑元素建立一個按鈕。按下按鈕時會執行捷徑中所定義的 URL。自 3.1 後



<!ELEMENT handle EMPTY>

<!ATTLIST handle

close (true | false) "true"

image CDATA #IMPLIED>

控制啟動列如何呈現的選用性元素。自 3.1 後



<!ELEMENT introContent (page+ , group* , extensionContent*)>

introContent 元素定義簡介內容檔的主體。 內容檔包含頁面、可併入多個頁面的共用群組,以及其他配置中所定義之定錨點的延伸規格。



<!ELEMENT page (group* | link* | text* | head* | img* | include* | html* | title? | anchor* | contentProvider*)>

<!ATTLIST page

url          CDATA #IMPLIED

id           CDATA #REQUIRED

style        CDATA #IMPLIED

alt-style    CDATA #IMPLIED

filteredFrom (swt|html)

content      CDATA #IMPLIED

style-id     CDATA #IMPLIED

shared-style (true | false) >

這個元素用來說明要顯示的頁面。 簡介可以顯示動態和靜態頁面。
動態頁面的內容產生自 page 的子元素,如下所述。 style 或 alt-style 會依呈現方式而套用。 參照 id 或 class-id 可以進一步加強樣式。
靜態頁面可讓您重複使用簡介中現有的 HTML 文件,且可以從任何其他靜態或動態頁面鏈結到它。 靜態頁面不定義在 page 元素中,它們只是其他頁面所能鏈結的 HTML 檔。
在簡介配置延伸點的呈現元素中指定了 ID 的首頁,可以有一個指示它是靜態頁面的 URL。 如果沒有指定任何 URL,就會假設首頁是動態的。 所有利用 page 元素來說明的其他頁面都是動態的。
另外,也請注意,當使用 SWT 呈現且要顯示靜態頁面時,會啟動一個外部瀏覽器,現行頁面仍會維持可見狀態。
動態頁面中所用的子元素如下:group 子元素用來分組相關內容,以及在分組內容中套用樣式。 link 子元素用來定義鏈結,以便鏈結到某個靜態或動態頁面以及執行簡介動作/指令。 鏈結通常定義在頁面層次,以在各主要頁面之間導覽,而不是在頁面各鏈結之間導覽。 text 子元素用來定義頁面層次的文字內容。head 子元素只適用於 Web 型呈現,可在 HTML head 區段中加入其他 html。 在加入 Java Script 或額外的樣式表時,這非常有用。img 子元素用來定義頁面層次的影像內容。include 子元素可供重複使用頁面外的任何元素。html 子元素只適用於 Web 型呈現,可供在頁面內容中內嵌或併入 html。 內嵌可在 HTML object 內,藉由參照 html 檔來內嵌定義完整的 html 檔。 併入可直接從 HTML 檔併入 HTML 片段。 title 子元素用來定義頁面的標題。 anchor 子元素定義一個點,供 <extensionContent> 元素從外部提供內容。



<!ELEMENT group (group* | link* | text* | img* | include* | html* | anchor* | contentProvider*)>

<!ATTLIST group

id           CDATA #REQUIRED

label        CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

用來分組相關內容、應該已套用類似樣式的內容,或將一起併入其他頁面的內容。



<!ELEMENT head EMPTY>

<!ATTLIST head

src      CDATA #REQUIRED

encoding CDATA #IMPLIED>

引導 HTML 併入頁面 的 HEAD 內容區中。 它可在 HTML HEAD 區段中加入其他 html。 在加入 Java Script 或額外的樣式表時,這非常有用。 這個標記只用來搭配 HTML 型簡介部分實作。 在 UI 表單實作中,會忽略它。 一個頁面可以有多個 head 元素。 實作只能有正好一個 head 元素(因為所有頁面都會共用它)。



<!ELEMENT title EMPTY>

<!ATTLIST title

id           CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

文字片段可以選用地包含跳出的 HTML 標示。 它只用來作為頁面標題,因此,給定的頁面最多可有一個 title 元素。



<!ELEMENT link (text? , img?)>

<!ATTLIST link

id           CDATA #IMPLIED

label        CDATA #IMPLIED

url          CDATA #REQUIRED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

可以鏈結到靜態 HTML 檔、外部網站,也能夠執行簡介 URL 動作。



<!ELEMENT text EMPTY>

<!ATTLIST text

id           CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

文字片段可以選用地包含跳出的 HTML 標示。 它可以包括 b 和 li 標示。 它也可以包含 URL 的錨點。 如果需要多個段落,文字可以分成幾個區段,各區段都開始和結束於 p 標示。



<!ELEMENT img EMPTY>

<!ATTLIST img

id           CDATA #REQUIRED

src          CDATA #REQUIRED

alt          CDATA #IMPLIED

style-id     CDATA #IMPLIED

filteredFrom (swt|html) >

代表簡介內容且不含呈現方式的影像(有別於樣式中所定義的裝飾影像)。



<!ELEMENT html (img | text)>

<!ATTLIST html

id           CDATA #REQUIRED

src          CDATA #REQUIRED

type         (inline|embed)

style-id     CDATA #IMPLIED

filteredFrom (swt|html)

encoding     CDATA #IMPLIED>

內嵌整份文件或就地列入 HTML 片段來引導 HTML 併入頁面中。 Fallback 影像或文字必須定義給替代的 swt 呈現。
內嵌可將完整定義的 HTML 檔內嵌在動態頁面的內容中。 將建立一個 HTML object 元素來參照這個 HTML 檔。
併入可直接從檔案中將 HTML 片段併入動態 HTML 頁面中。



<!ELEMENT include EMPTY>

<!ATTLIST include

configId    CDATA #IMPLIED

path        CDATA #REQUIRED

merge-style (true | false) >

展開給定路徑和選用 configId 屬性所鎖定的元素。 路徑應該能夠唯一定址在指定配置內的元素。 它可以指向配置層次所定義的共用群組,或頁面中的任何元素。



<!ELEMENT anchor EMPTY>

<!ATTLIST anchor

id CDATA #REQUIRED>

錨點是用來宣告延伸的元素。 它是配置中用來接受外部提供內容的一個位置。 在 extensionContent 中的 path 屬性,只有錨點是有效的目標值



<!ELEMENT extensionContent (text | group | link | html | include)>

<!ATTLIST extensionContent

style     CDATA #IMPLIED

alt-style CDATA #IMPLIED

path      CDATA #REQUIRED

content   CDATA #IMPLIED>

要加到目標錨點中的內容。 在給定的 configExtension 中,只能有一個 extensionContent,因為如果無法解析這個延伸規格(如果找不到配置,或找不到目標 anchor 元素),就必須忽略延伸規格中的頁面和/或群組。



<!ELEMENT contentProvider (text?)>

<!ATTLIST contentProvider

id       CDATA #REQUIRED

pluginId CDATA #IMPLIED

class    CDATA #REQUIRED>

簡介內容提供者的 Proxy,該 Proxy 容許簡介頁面動態由不同來源(例如,Web、Eclipse、等等)擷取資料,並在執行時期依據此動態資料提供內容。如果無法載入類別屬性中所定義的 IIntroContentProvider 類別,則會呈現文字元素內容。 這是一個 HTML 簡介標示的動態版本。HTML 標示容許將靜態內容嵌入或列入產生的 HTML 簡介頁面,contentProvider 容許在執行時期動態建立該內容。 另一個標示間的差異為 HTMl 標示支援 HTML 呈現,而 contentProvider 標示支援 HTML 和 SWT 兩者的呈現。自 3.0.1 後



下面是 config 延伸點的範例用法。

<extension id=

"intro"

point=

"org.eclipse.ui.intro.config"

>

<config introId=

"com.org.xyz.intro"

id=

"com.org.xyz.introConfig"

content=

"introContent.xml"

>

<presentation home-page-id=

"root"

title=

"%intro.title"

>

<implementation ws=

"win32"

style=

"css/shared.css"

kind=

"html"

os=

"win32"

>

</implementation>

<implementation style=

"css/shared_swt.properties"

kind=

"swt"

>

</implementation>

</presentation>

</config>

</extension>

如果需要進一步的詳細資料,請參閱 org.eclipse.ui.intro.config API 套件的規格。

org.eclipse.platform 外掛程式所提供的簡介,是 Eclipse 中唯一的實作。