欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

窗口系統(tǒng)的制作方法

文檔序號:2610302閱讀:288來源:國知局
專利名稱:窗口系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及用于顯示一個(gè)窗口、在一個(gè)窗口中繪制并顯示一個(gè)導(dǎo)航顯示屏的裝置和方法、一個(gè)接收器/解碼器、一個(gè)電視系統(tǒng)、一個(gè)計(jì)算機(jī)程序產(chǎn)品、一種計(jì)算機(jī)可讀介質(zhì)和一個(gè)信號。
本發(fā)明具有對一個(gè)和接收器/解碼器一起使用的窗口系統(tǒng)的特殊應(yīng)用。
參考其內(nèi)容在此通過參考被包含在此的歐洲專利申請99402353.9、99402721.7和00300832.3,并且要求享受它們的優(yōu)先權(quán)。
窗口系統(tǒng)用來允許不同的窗口內(nèi)容、例如諸如文本或圖形圖象的圖形對象被同時(shí)顯示在處于一個(gè)屏幕上的、被稱為窗口的不同區(qū)域上。在傳統(tǒng)窗口系統(tǒng)中的窗口包含在一個(gè)區(qū)域中的矩形,在該區(qū)域中的、可以繪制圖形的對象相對于一個(gè)不透明背景進(jìn)行顯示。窗口通常占據(jù)屏幕的一個(gè)選定區(qū)域,而且一個(gè)窗口的大小、背景色和位置通常是在打開該窗口時(shí)定義的,并且在打開之后是可改變的。
傳統(tǒng)的窗口系統(tǒng)在它們允許信息在該屏幕上呈現(xiàn)的方式上可能是固定的。例如,如果兩個(gè)窗口重疊了,則在最前面的窗口將遮蔽位于下面的這個(gè)窗口的重疊部分。
在本發(fā)明的第一個(gè)方面中,提供了一種在一個(gè)屏幕上顯示一個(gè)窗口的方法,其中該窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象。在一個(gè)尤其可取的方面,這種方法由一個(gè)接收器/解碼器執(zhí)行,該接收器/解碼器最好是和一臺電視機(jī)一起使用。
本發(fā)明能夠提供如下優(yōu)點(diǎn)信息可以被呈現(xiàn)在一個(gè)具有這樣一個(gè)窗口系統(tǒng)的某些或全部優(yōu)點(diǎn)的屏幕上,同時(shí)通過該窗口可至少部分地看見置于該窗口下面的對象。
本發(fā)明源于假如采取了一定的預(yù)防措施,可以實(shí)現(xiàn)具有一個(gè)透明背景的窗口。這種預(yù)防措施包含一旦窗口已經(jīng)被繪制了,就不在該窗口后面進(jìn)行繪制,或是監(jiān)視在該窗口后面的繪制以校正該繪制的任何影響。
該方法可以進(jìn)一步包含繪制該窗口的一個(gè)框架,以便使該窗口的界限是可見的。窗口的大小可以獨(dú)立于屏幕的大小,而且該窗口在屏幕上是可以調(diào)整大小和可移動的。
更可取地,窗口形成了包含一個(gè)窗口顯示的一個(gè)屏幕的一部分,而且該方法進(jìn)一步包含將該窗口顯示和一個(gè)視頻圖象相結(jié)合。窗口顯示可以通過混合這兩個(gè)但是可能簡單地改寫在該視頻圖象(最好是較大面積的)上與視頻圖象相結(jié)合,兩者都最好是使用硬件裝置遮蔽在該窗口顯示后面的視頻圖象。部分源于由透明窗口所提供的、增加的緊湊性,能夠在一個(gè)視頻圖象上最小化菜單等類似物的打擾,而這在接收器/解碼器的環(huán)境中能夠是尤其有利的。
更可取地是,該方法進(jìn)一步包含在一個(gè)電視屏幕上顯示窗口。與混合方法相比,本發(fā)明尤其適用于電視顯示,其中電視顯示的對比度通常較低。
更可取地是,該方法進(jìn)一步包含以下步驟定義窗口的大?。辉谠摯翱谥欣L制前景對象;以及布置該窗口的背景。
這個(gè)特征也是獨(dú)立提供的。因此,本發(fā)明還提供了一種顯示一個(gè)窗口的方法,包含以下步驟定義窗口的大小,在該窗口中繪制前景對象,以及布置該窗口的背景,以便使置于該背景下面的對象可見。背景最好是在該窗口中沒有繪制前景對象的那些部分。
繪制前景對象的步驟可以包含將前景像素設(shè)置為期望值。前景對象可以包含直線、曲線、方框、圓周、三角形以及印刷字符中的任何一個(gè)或者全部,而且最好是至少在兩個(gè)繪制操作中被繪制出來。前景對象可以包含交互式的控制??刂瓶梢允抢缈牲c(diǎn)擊的按鈕、單選按鈕、文本框、可點(diǎn)擊的箭頭等等。這能夠允許創(chuàng)建任意形狀的浮動面板。
布置背景的步驟可以包含最好是在定義該背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值不變,或是將至少一個(gè)像素值和一個(gè)置于下面圖象的一個(gè)像素值混合。以這種方式,通過使背景部分地或者全部透明,通過該背景可以看見置于下面的對象。
在一個(gè)實(shí)施例中,背景是完全透明的,而且沒有繪制背景像素值。在另一個(gè)實(shí)施例中,背景被分配了一個(gè)透明度系數(shù),而且依賴于該透明度系數(shù),將至少一個(gè)背景像素值與一個(gè)置于下面的對象的至少一個(gè)像素值進(jìn)行混合。這能夠允許在背景中的圖象和置于下面的對象是同時(shí)可見的。例如,背景可以具有一個(gè)可見的徽標(biāo)或水印,但是通過它可以看到置于下面的對象。例如通過用戶或是在該窗口的客戶的控制之下,可以調(diào)整該透明度系數(shù)。在一個(gè)進(jìn)一步的實(shí)施例中,不同的透明度系數(shù)被分配給該背景的不同部分。例如,該背景的某些部分可以是完全透明的,而其它部分可以具有與置于下面的對象的像素值相混合的背景像素值。
更可取地是,置于背景下面的至少一個(gè)對象包含一個(gè)網(wǎng)頁的一個(gè)元素;例如該元素能夠是文本、超鏈接、或其它HTML元素。這樣,能夠允許一個(gè)控制面板具有更加靈活的形狀,例如當(dāng)給定一個(gè)網(wǎng)頁的一個(gè)較大視圖時(shí),允許一個(gè)導(dǎo)航條被更加有效地顯示出來。
該方法可以進(jìn)一步包含顯示一個(gè)進(jìn)一步具有這樣一個(gè)背景的窗口,通過該背景看得見置于下面的對象;因此可以提供不只一個(gè)的“透明窗口”。為了實(shí)現(xiàn)重疊的透明窗口,第一個(gè)窗口的至少一部分可以置于該進(jìn)一步窗口的下面。
依據(jù)本發(fā)明已經(jīng)被確定的問題是在位于一個(gè)具有透明背景窗口下的一個(gè)窗口中進(jìn)行繪制,可能會在該透明窗口中產(chǎn)生圖象的惡化。例如,在一個(gè)透明窗口中的前景對象可以被該繪制覆蓋。該方法因此可以進(jìn)一步包含監(jiān)視在一個(gè)進(jìn)一步窗口中的繪制,以便使在影響所述窗口的該進(jìn)一步窗口中繪制能夠被校正。
這個(gè)特征還可以被獨(dú)立地提供,而且因此本發(fā)明還提供了一種在一個(gè)窗口、最好是可能至少部分地位于一個(gè)重疊窗口下的一個(gè)窗口中進(jìn)行繪制的方法,其中該重疊窗口具有一個(gè)通過它看得見置于下面的對象的背景,該方法包含在該窗口中進(jìn)行繪制并且監(jiān)視該繪制,以便使影響一個(gè)重疊窗口的繪制能夠被校正過來,該方法最好是由一個(gè)接收器/解碼器執(zhí)行。
為了校正在該重疊窗口中的繪制,該方法可以進(jìn)一步包含確定一個(gè)可能受到該繪制影響的窗口,并且發(fā)送一個(gè)信號(例如,一個(gè)曝光事件),用以指示該可能受到影響的窗口的一個(gè)客戶刷新那個(gè)窗口的至少一部分。
該信號可以是一個(gè)Java事件;它還可能是一條消息,最好是經(jīng)由一個(gè)函數(shù)調(diào)用發(fā)送。
在一個(gè)實(shí)施例中,可以繼每個(gè)繪制操作之后發(fā)送一個(gè)信號。然而,依據(jù)本發(fā)明已經(jīng)發(fā)現(xiàn),以這種方式發(fā)送信號可能導(dǎo)致大量的重新繪制操作,結(jié)果使大量處理專用于重新繪制。依據(jù)本發(fā)明的一個(gè)最佳實(shí)施例,通過取消為至少一個(gè)繪制操作過程發(fā)送一個(gè)信號克服了這個(gè)問題。在此處使用的術(shù)語“取消發(fā)送一個(gè)信號”、以及類似術(shù)語,最好是暗示該信號要么不被發(fā)送要么不被接收。例如,在雙方之間的傳送中截取和刪除一個(gè)信號,而不是首先發(fā)送該信號都會構(gòu)成取消該信號。
該特征也可以被獨(dú)立地提供,因此在本發(fā)明的另一個(gè)方面中,提供了一種在一個(gè)窗口中進(jìn)行繪制的方法,其中該窗口最好是可能至少部分地位于具有這樣一個(gè)背景的窗口處,通過該背景看得見置于下面的對象,該方法包含提供第一模式,繼每個(gè)繪制操作之后,發(fā)送一個(gè)信號(例如,一個(gè)曝光事件),指示一個(gè)可能受到該繪制影響的窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分;以及提供第二模式,其中取消了一個(gè)信號的發(fā)送。
本發(fā)明的上述方面能夠提供下列優(yōu)點(diǎn)在第一種模式中可以執(zhí)行相對簡單的繪制操作,在這種情況下受影響的窗口將會被不斷地更新,然而更復(fù)雜的多個(gè)繪制操作可以在第二種模式中進(jìn)行,這可以減少與重新繪制有關(guān)的處理數(shù)量。
該信號可能從一個(gè)窗口管理器發(fā)送。做為選擇,該信號可能是發(fā)自一個(gè)窗口的一個(gè)客戶,最好是由執(zhí)行繪制的那個(gè)客戶發(fā)送,而且最好是發(fā)送給一個(gè)窗口管理器。該方法最好是進(jìn)一步包含產(chǎn)生與窗口管理器可得到的窗口透明度有關(guān)的信息,而且該方法可以進(jìn)一步包含將該信息存儲為該窗口的一個(gè)屬性。通過產(chǎn)生與窗口管理器可得到的一個(gè)窗口透明度有關(guān)的信息,諸如重新繪制之類的操作能夠以一種集中和有效的方式執(zhí)行。此外,為了增加透明窗口的特征到一個(gè)應(yīng)用中時(shí)能夠需要較少的工作,而且能夠降低在每個(gè)應(yīng)用中為實(shí)現(xiàn)透明窗口所需要的額外編碼數(shù)量。
在此使用的術(shù)語“一個(gè)窗口的屬性”最好是暗示與一個(gè)窗口有關(guān)的某種形式數(shù)據(jù),該數(shù)據(jù)由窗口管理器所了解,并且通常被保存在由窗口管理器保持、并包含其它窗口屬性的一個(gè)存儲區(qū)分塊中。更可取地是,該方法進(jìn)一步包含最好是在一條消息中或是經(jīng)由一個(gè)函數(shù)調(diào)用,將該信息發(fā)送到窗口管理器。依賴于該信息,一個(gè)信號的發(fā)送可能被取消。
依賴于這些窗口的關(guān)系,一個(gè)信號的發(fā)送可能被取消。例如,可以知道和一個(gè)在其中進(jìn)行繪制的活動窗口具有一定關(guān)系的窗口不會與那個(gè)窗口重疊,在這種情況下可能通過忽略這種窗口來節(jié)省某些處理。例如,和該活動窗口具有下列關(guān)系的窗口能夠被忽略·母親,即從其打開該活動窗口的窗口·上級,即母親、母親的母親等等·姐妹,即與該活動窗口從同一個(gè)窗口打開的窗口·女兒,即從該活動窗口打開的窗口·下級,即女兒、女兒的女兒等等。
做為選擇,能夠忽略所有的窗口,或是能夠忽略所有的透明窗口。
該方法可以進(jìn)一步包含繼若干數(shù)目的繪制操作之后發(fā)送一個(gè)信號,該數(shù)目最好是在至少一個(gè)繪制操作前被確定下來,而且最好是大于1、3、5、10、30、50或100。這能夠比在每個(gè)繪制操作之后重新繪制要更加有效,但是如果大量繪制操作被一口氣執(zhí)行,則能夠避免該重疊窗口不被重新繪制持續(xù)一個(gè)相當(dāng)長的時(shí)間的情況(這在美學(xué)觀點(diǎn)上是不使人高興的)。該方法可以進(jìn)一步包含重新繪制可能受到影響的窗口的至少一部分。
在本發(fā)明的另一個(gè)方面中,提供了在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的一種方法,其中監(jiān)視在一個(gè)窗口中的繪制,而且發(fā)送一個(gè)信號到可能受到該繪制影響的至少一個(gè)其它窗口,該方法進(jìn)一步包含為至少一個(gè)繪制操作選擇一種模式,在該模式中到至少一個(gè)其它窗口的一個(gè)信號被取消。
上述方法可以進(jìn)一步包含繼所述至少一個(gè)繪制操作之后,選擇發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口的模式。該信號可以是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
本發(fā)明還提供了一種用于顯示一個(gè)窗口的方法,包含提供一個(gè)管理該窗口顯示的窗口管理器,以及將與該窗口透明度有關(guān)的信息傳遞到該窗口管理器。
更可取地是,窗口管理器形成一個(gè)虛擬機(jī)的一部分。
本發(fā)明進(jìn)一步提供了一種,最好是為一個(gè)網(wǎng)絡(luò)瀏覽器,顯示一個(gè)導(dǎo)航顯示屏的方法,其中導(dǎo)航顯示屏包含至少一個(gè)具有一個(gè)透明背景的窗口。
透明背景通??梢晕挥谇熬暗耐饷?。該方法可以由一個(gè)接收器/解碼器執(zhí)行,該接收器/解碼器最好是與一個(gè)電視機(jī)一起使用。
本發(fā)明適用于任何窗口系統(tǒng),例如和一臺計(jì)算機(jī)一起使用的系統(tǒng)。然而,本發(fā)明具有接收器/解碼器的特殊應(yīng)用,而且因此該方法可以由一個(gè)接收器/解碼器執(zhí)行。接收器/解碼器與個(gè)人計(jì)算機(jī)相比通常具有降低的處理能力,因此本發(fā)明中減少了所涉及的處理量的實(shí)施例特別適合于與接收器/解碼器一起使用。
在本發(fā)明的另一個(gè)方面,提供了一種在一個(gè)屏幕上顯示窗口的方法,包含以下步驟顯示第一和第二個(gè)窗口,至少第一個(gè)窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象;確定第一個(gè)窗口是否與第二個(gè)窗口重疊;在第二個(gè)窗口中繪制;以及如果第一個(gè)窗口與第二個(gè)窗口重疊,則重新繪制第一個(gè)窗口的至少一部分。
該方法可以進(jìn)一步包含確定與第二個(gè)窗口重疊的一部分第一個(gè)窗口,而且重新繪制步驟可以包含重新繪制第一個(gè)窗口的那個(gè)部分。
在本發(fā)明的另一個(gè)方面,提供了一種在一個(gè)屏幕的一個(gè)區(qū)域上顯示一個(gè)透明窗口和這個(gè)透明窗口的一個(gè)確定內(nèi)容的方法,包含以下步驟確定該屏幕區(qū)域是否至少部分地用于顯示另一個(gè)窗口的一部分以及對應(yīng)于該部分的另一個(gè)窗口的另一個(gè)內(nèi)容;繪制其它窗口的至少這部分和相應(yīng)的其它內(nèi)容;以及繪制與其它窗口這部分重疊的所確定內(nèi)容的至少一部分。
依據(jù)本發(fā)明的一個(gè)有關(guān)方面,提供了一個(gè)接收器/解碼器,它包含用于在一個(gè)屏幕上顯示一個(gè)窗口的裝置(通常以一個(gè)處理器的形式),其中該窗口具有一個(gè)通過它看得見置于下面的對象的背景,該接收器/解碼器最好是與一臺電視機(jī)一起使用。
接收器/解碼器可以進(jìn)一步包含用于繪制該窗口的一個(gè)框架的裝置(通常以一個(gè)處理器的形式)。該顯示裝置最好是適于顯示一個(gè)形成了一個(gè)屏幕的一部分的窗口,其中該屏幕包含了一個(gè)窗口顯示,而且該接收器/解碼器最好是進(jìn)一步包含用于將該窗口顯示與一幅視頻圖像相結(jié)合的裝置。該顯示裝置最好是適合于在一個(gè)電視屏幕上顯示該窗口。
該接收器/解碼器可以進(jìn)一步包含
用于定義該窗口尺寸的裝置(通常以一個(gè)處理器的形式);用于在該窗口中繪制前景對象的裝置(通常以一個(gè)處理器的形式);以及用于布置該窗口背景的裝置(通常以一個(gè)處理器的形式)。
本發(fā)明提供了一個(gè)接收器/解碼器,它包含用于顯示一個(gè)窗口的裝置(通常以一個(gè)處理器的形式);用于定義該窗口尺寸的裝置(通常以一個(gè)處理器的形式);用于在該窗口中繪制前景對象的裝置(通常以一個(gè)處理器的形式);以及用于布置該窗口背景以使置于該背景下面的對象可見的裝置(通常以一個(gè)處理器的形式)。
用于繪制前景對象的裝置可以適于設(shè)置前景像素為期望值。該前景對象可以包含直線、曲線、方框、圓周、三角形和印刷字符中的任何一個(gè)或是全部,而且最好是適于在至少兩個(gè)繪制操作中被繪制出來。前景對象可以包含交互式的控制。
布置裝置最好是適于在定義該背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值保持不變。它可能適于在定義了背景的一個(gè)區(qū)域內(nèi),將至少一個(gè)像素值與一幅置于下面的圖像的一個(gè)像素值相混合。它可能適合于使至少一個(gè)前景像素保持不變。
置于背景下面的至少一個(gè)對象可以包含一個(gè)網(wǎng)頁的一個(gè)元素。
接收器/解碼器可以進(jìn)一步包含用于顯示具有這樣一個(gè)背景的一個(gè)進(jìn)一步窗口的裝置(通常以一個(gè)處理器的形式),通過該背景看得見置于下面的對象。第一個(gè)窗口的至少一部分可以置于該進(jìn)一步窗口的下面。
該接收器/解碼器可以進(jìn)一步包含裝置,用于監(jiān)視在一個(gè)進(jìn)一步窗口中進(jìn)行繪制,以便使影響所述窗口的、在該進(jìn)一步窗口中的繪制能夠被校正。
本發(fā)明提供了一個(gè)接收器/解碼器,它包含用于在一個(gè)窗口中進(jìn)行繪制的裝置;以及用于監(jiān)視該繪制以便使影響一個(gè)重疊窗口的繪制能夠被校正的裝置。
接收器/解碼器可以進(jìn)一步包含裝置,用于確定一個(gè)可能受到該繪制影響的窗口、以及發(fā)送一個(gè)信號用以指示可能受到影響的該窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分。該信號可能是一個(gè)Java事件。它可以繼每個(gè)繪制操作之后被發(fā)送。
接收器/解碼器可以進(jìn)一步包含裝置,用于取消該用于至少一個(gè)繪制操作的信號。
本發(fā)明提供了一個(gè)接收器/解碼器,它包含用于以第一和第二模式在一個(gè)窗口中進(jìn)行繪制的裝置,其中在第一模式中,繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分;而在第二模式中,取消一個(gè)信號的發(fā)送。
該信號可能發(fā)自一個(gè)窗口管理器。該信號可能發(fā)自一個(gè)窗口的一個(gè)客戶,而且最好是由執(zhí)行繪制的那個(gè)客戶發(fā)送,以及最好是發(fā)送給一個(gè)窗口管理器。
接收器/解碼器可以進(jìn)一步包含用于生成窗口管理器可得到的與那個(gè)窗口透明度有關(guān)的信息的裝置。它可以進(jìn)一步包含用于將該信息存儲為該窗口的一個(gè)屬性的裝置。它可以進(jìn)一步包裝置用于,最好是在一條消息中或是經(jīng)由一個(gè)函數(shù)調(diào)用,將該信息發(fā)送到窗口管理器。
取決于該信息,一個(gè)信號的發(fā)送可能被取消。取決于這些窗口的關(guān)系,一個(gè)信號的發(fā)送可能被取消。
接收器/解碼器可以進(jìn)一步包含裝置,用于繼若干數(shù)目的繪制操作之后發(fā)送一個(gè)信號,其中該數(shù)目最好是在至少一個(gè)繪制操作前被確定下來,而且最好是大于1、3、5、10、30、50或100。
該接收器/解碼器可以進(jìn)一步包含裝置,用于重新繪制可能受到影響的那個(gè)窗口的至少一部分。
在本發(fā)明的一個(gè)裝置方面,提供了用于顯示一個(gè)窗口的裝置,該裝置包含用于定義該窗口尺寸的裝置、用于在該窗口中繪制前景對象的裝置、以及用于布置該窗口背景以便使置于該背景下面的對象可見的裝置。
該裝置可以進(jìn)一步包含用于繪制該窗口的一個(gè)框架的裝置。
用于繪制前景對象的裝置可以包含用于設(shè)置前景像素為期望值的裝置,以及用于布置該背景的裝置,其可適于在一個(gè)定義了背景的區(qū)域中使至少一個(gè)像素值保持不變,或是使至少一個(gè)像素值與一幅置于下面的圖像的一個(gè)像素值相混合。
該裝置可以進(jìn)一步包含裝置,用于監(jiān)視在另外一個(gè)窗口中進(jìn)行的繪制,以便使影響所述窗口的、在該另外一個(gè)窗口中的繪制能夠被校正。
在另一個(gè)裝置方面,提供了用于在一個(gè)窗口、最好是一個(gè)至少部分地位于一個(gè)重疊窗口下面的窗口中進(jìn)行繪制的裝置,其中該重疊窗口具有一個(gè)通過它看得見置于下面的對象的背景,該裝置包含用于在該窗口中進(jìn)行繪制的裝置,以及用于監(jiān)視該繪制以便使影響一個(gè)重疊窗口的繪制能夠被校正的裝置。
該裝置可以進(jìn)一步包含裝置,用于確定一個(gè)可能受到該繪制影響的窗口;以及裝置,用于發(fā)送一個(gè)信號以指示可能受到影響的該窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分。
該裝置可以適于繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,或是該裝置可以適于取消用于至少一個(gè)繪制操作的一個(gè)信號的發(fā)送。
在另一個(gè)裝置方面中,提供了用于在一個(gè)窗口、最好是可以至少部分地位于具有這樣一個(gè)背景的窗口下面的一個(gè)窗口中進(jìn)行繪制的裝置,通過該背景看得見置于下面的對象,該裝置具有第一模式和第二模式,在第一模式中,繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分;在第二模式中,取消了一個(gè)信號的發(fā)送。
該裝置可能適合于取決于這些窗口的關(guān)系,取消一個(gè)信號的發(fā)送。該裝置可能適合于繼若干個(gè)繪制操作之后發(fā)送一個(gè)信號。
該裝置可以進(jìn)一步包含用于重新繪制可能受到影響的那個(gè)窗口的至少一部分的裝置。
在另一個(gè)裝置方面中,提供了用于在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的裝置,其監(jiān)視在一個(gè)窗口中的繪制,而且發(fā)送一個(gè)信號到可能受到該繪制影響的至少一個(gè)其它窗口,該裝置進(jìn)一步包含用于選擇一種模式的裝置,在該模式中取消了用于至少一個(gè)繪制操作的、到至少一個(gè)其它窗口的一個(gè)信號。
該裝置可以進(jìn)一步包含用于選擇一種模式的裝置,在該模式中,繼所述至少一個(gè)繪制操作之后發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口。該信號可以是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
在一個(gè)相關(guān)方面,本發(fā)明提供了用于在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的裝置,包含用于在一個(gè)窗口中進(jìn)行繪制的裝置(通常以一個(gè)處理器的形式);用于監(jiān)視在該窗口中的繪制、并且向可能受到該繪制影響的至少一個(gè)其它窗口發(fā)送一個(gè)信號的裝置(通常以一個(gè)處理器的形式);以及用于選擇一種模式的裝置(通常以一個(gè)處理器的形式),在該模式下,用于至少一個(gè)繪制操作的、到至少一個(gè)其它窗口的一個(gè)信號被取消了。
該裝置最好是進(jìn)一步包含用于選擇一種模式的裝置,在該模式下,繼所述至少一個(gè)繪制操作之后,發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口。該信號可以是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
本發(fā)明進(jìn)一步提供了用于顯示一個(gè)窗口的裝置,包含用于顯示該窗口的裝置(通常以一個(gè)處理器的形式);一個(gè)窗口管理器,用于管理該窗口的顯示;以及用于傳送與該窗口透明度有關(guān)的信息到該窗口管理器的裝置(通常以一個(gè)處理器的形式)。
更可取地,窗口管理器形成一個(gè)虛擬機(jī)的一部分。
本發(fā)明還提供了用于顯示一個(gè)導(dǎo)航顯示屏的裝置,包含裝置(通常以一個(gè)處理器的形式),用于以這樣一種方式顯示該導(dǎo)航顯示屏以便使該導(dǎo)航顯示屏包含至少一個(gè)具有透明背景的窗口。
上述裝置中的任何一個(gè)可以是一個(gè)接收器/解碼器,因此本發(fā)明進(jìn)一步提供了一個(gè)包含了如前所述的裝置的接收器/解碼器。
本發(fā)明提供了一個(gè)電視系統(tǒng),包含一個(gè)如前所述的接收器/解碼器以及一臺可連接到該接收器/解碼器的電視機(jī)。它還提供了一個(gè)電視系統(tǒng),包含一個(gè)如前所述的接收器/解碼器以及一臺連接到該接收器/解碼器的電視機(jī)。
依據(jù)本發(fā)明,在一個(gè)進(jìn)一步的方面,提供了一個(gè)用于在一個(gè)屏幕上顯示窗口的接收器/解碼器,包含用于顯示第一和第二個(gè)窗口的裝置(通常以一個(gè)處理器的形式),其中至少第一個(gè)窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象;
用于確定第一個(gè)窗口是否與第二個(gè)窗口重疊的裝置(通常以一個(gè)處理器的形式);用于在第二個(gè)窗口中進(jìn)行繪制的裝置(通常以一個(gè)處理器的形式);以及用于如果第一個(gè)窗口與第二個(gè)窗口重疊,則重新繪制第一個(gè)窗口的至少一部分的裝置(通常以一個(gè)處理器的形式)。
依據(jù)本發(fā)明,在一個(gè)進(jìn)一步的方面,提供了與一個(gè)接收器/解碼器一起使用的一個(gè)計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品(在程序的控制下)包含用于在一個(gè)屏幕上顯示一個(gè)窗口的代碼,其中該窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象,該接收器/解碼器最好是與一臺電視機(jī)一起使用。
該計(jì)算機(jī)程序產(chǎn)品可以被有形地體現(xiàn)為,例如存儲在一個(gè)存儲介質(zhì)諸如硬盤或易失性或非易失性存儲器上的軟件,或一個(gè)信號。
該計(jì)算機(jī)程序產(chǎn)品可以進(jìn)一步包含用于繪制該窗口的一個(gè)框架的代碼。
更可取地是,顯示代碼適于顯示一個(gè)形成了一個(gè)屏幕的一部分的窗口,其中該屏幕包含了一個(gè)窗口顯示,且該產(chǎn)品進(jìn)一步包含用于將該窗口顯示與一幅視頻圖像相結(jié)合的代碼。該顯示代碼可以適于在一個(gè)電視屏幕上顯示該窗口。
該計(jì)算機(jī)程序產(chǎn)品可以進(jìn)一步包含用于定義該窗口尺寸的代碼;用于在該窗口中繪制前景對象的代碼;以及用于布置該窗口背景的代碼。
本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,它包含用于顯示一個(gè)窗口的代碼;用于定義該窗口尺寸的代碼;用于在該窗口中繪制前景對象的代碼;以及用于布置該窗口背景以使置于該背景下面的對象可見的代碼。
更可取地是,用于繪制前景對象的代碼適于將前景像素設(shè)置為期望值。更可取地是,該前景對象可以包含直線、曲線、方框、圓周、三角形和印刷字符中的任何一個(gè)或是全部,而且最好是適于至少在兩個(gè)繪制操作中被繪制出來。更可取地是,該前景對象可以包含交互式的控制。
布置代碼可適于在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值保持不變。布置代碼可適于在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值與一幅置于下面的圖象的一個(gè)像素值相混合。該布置代碼可適于使至少一個(gè)前景像素保持不變。
置于該背景下面的至少一個(gè)對象可以包含一個(gè)網(wǎng)頁的一個(gè)元素。
更可取地是,該計(jì)算機(jī)程序產(chǎn)品進(jìn)一步包含用于顯示具有這樣一個(gè)背景的一個(gè)進(jìn)一步窗口的代碼,通過該背景看得見置于下面的對象。
第一個(gè)窗口的至少一部分可以置于該進(jìn)一步窗口的下面。
該計(jì)算機(jī)程序產(chǎn)品可以進(jìn)一步包含代碼,用于監(jiān)視在一個(gè)進(jìn)一步窗口中的繪制,以便使影響所述窗口的、在該另外一個(gè)窗口中的繪制能夠被校正。
本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,包含用于在一個(gè)窗口中進(jìn)行繪制的代碼;以及用于監(jiān)視該繪制以便使影響一個(gè)重疊窗口的繪制能夠被校正的代碼。
該計(jì)算機(jī)程序產(chǎn)品可以進(jìn)一步包含用于確定一個(gè)可能受到該繪制影響的窗口、以及發(fā)送一個(gè)信號用以指示可能受到影響的該窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的代碼。該信號可能是一個(gè)Java事件。該信號可能繼每個(gè)繪制操作之后被發(fā)送。
更可取地是,該計(jì)算機(jī)程序產(chǎn)品進(jìn)一步包含用于取消用于至少一個(gè)繪制操作的信號的代碼。
本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,它包含用于在第一和第二模式中,在一個(gè)窗口中進(jìn)行繪制的代碼,其中,在第一模式中,繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分;而在第二模式中,取消一個(gè)信號的發(fā)送。
該信號可能發(fā)自一個(gè)窗口管理器。該信號可能發(fā)送自一個(gè)窗口的一個(gè)客戶,而且最好是由執(zhí)行該繪制的那個(gè)客戶發(fā)送,以及最好是被發(fā)送給一個(gè)窗口管理器。
更可取地是,該計(jì)算機(jī)程序產(chǎn)品進(jìn)一步包含用于生成該窗口管理器可得到的、與那個(gè)窗口透明度有關(guān)的信息的代碼。
更可取地是,該計(jì)算機(jī)程序產(chǎn)品進(jìn)一步包含用于將該信息存儲為該窗口的一個(gè)屬性的代碼。
更可取地是,該計(jì)算機(jī)程序產(chǎn)品進(jìn)一步包含代碼用于,最好是在一條消息中或是經(jīng)由一個(gè)函數(shù)調(diào)用,發(fā)送該信息到窗口管理器。
取決于該信息,一個(gè)信號的發(fā)送可能被取消。取決于這些窗口的關(guān)系,一個(gè)信號的發(fā)送可能被取消。
該計(jì)算機(jī)程序產(chǎn)品可以進(jìn)一步包含用于繼若干數(shù)目的繪制操作之后發(fā)送一個(gè)信號的代碼,其中該數(shù)目最好是在至少一個(gè)繪制操作前被確定下來,而且最好是大于1、3、5、10、30、50或100。
該計(jì)算機(jī)程序產(chǎn)品可以進(jìn)一步包含用于重新繪制可能受到影響的那個(gè)窗口的至少一部分的代碼。
本發(fā)明進(jìn)一步提供了用于在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的裝置,包含用于在一個(gè)窗口中進(jìn)行繪制的代碼;用于監(jiān)視在該窗口中的繪制、并且向可能受到該繪制影響的至少一個(gè)其它窗口發(fā)送一個(gè)信號的代碼;以及用于選擇一種模式的代碼,其中在該模式中,用于至少一個(gè)繪制操作的、到至少一個(gè)其它窗口的一個(gè)信號被取消了。
該裝置可以進(jìn)一步包含用于選擇一種模式的代碼,其中在該模式中,繼所述至少一個(gè)繪制操作之后發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口。該信號可以是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
本發(fā)明提供了用于顯示一個(gè)窗口的裝置,包含用于顯示該窗口的代碼;一個(gè)窗口管理器,用于管理該窗口的顯示;以及用于傳送與該窗口透明度有關(guān)的信息到窗口管理器的代碼。
該窗口管理器可以形成一個(gè)虛擬機(jī)的一部分。
本發(fā)明進(jìn)一步提供了一種顯示一個(gè)導(dǎo)航顯示屏的裝置,包含代碼,用于以這樣一種方式顯示該導(dǎo)航顯示屏以便使該導(dǎo)航顯示屏包含至少一個(gè)具有透明背景的窗口。
本發(fā)明還提供了一種用于在一個(gè)屏幕上顯示窗口的計(jì)算機(jī)程序產(chǎn)品,包含用于顯示第一和第二個(gè)窗口的代碼,其中至少第一個(gè)窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象;用于確定第一個(gè)窗口是否與第二個(gè)窗口相重疊的代碼;用于在第二個(gè)窗口中進(jìn)行繪制的代碼;以及用于如果第一個(gè)窗口與第二個(gè)窗口重疊,則重新繪制第一個(gè)窗口的至少一部分的代碼。
本發(fā)明還提供了一種計(jì)算機(jī)可讀介質(zhì),其上存儲有一段用于實(shí)現(xiàn)如上所述的任何一種方法的程序,以及一種包含了一段用于實(shí)現(xiàn)如上所述的任何一種方法的程序的計(jì)算機(jī)程序產(chǎn)品。
本發(fā)明進(jìn)一步提供了一種包含了一個(gè)存儲器和處理器的計(jì)算機(jī)程序產(chǎn)品,其中在該存儲器中存儲有一個(gè)應(yīng)用程序,而且該處理器(在該應(yīng)用程序的控制下)適于執(zhí)行如前所述的方法。
本發(fā)明還提供了一種包含了一段用于執(zhí)行如前所述方法的程序的計(jì)算機(jī)程序產(chǎn)品。
本發(fā)明還進(jìn)一步提供了一種計(jì)算機(jī)可讀介質(zhì),其上存儲有一段用于執(zhí)行如前所述方法的程序。
本發(fā)明提供了一種計(jì)算機(jī)可讀介質(zhì),其上存儲有一種如前所述的計(jì)算機(jī)程序產(chǎn)品。
本發(fā)明還提供了一個(gè)有形地體現(xiàn)了一種如前所述的計(jì)算機(jī)程序產(chǎn)品的信號。
本發(fā)明還提供了一種實(shí)質(zhì)上結(jié)合附圖描述的、并在附圖中進(jìn)行了說明的方法和裝置。
一個(gè)方面的特征可以被應(yīng)用于其它方面,而且方法特征可以和與裝置、接收器/解碼器、計(jì)算機(jī)程序產(chǎn)品、或計(jì)算機(jī)可讀介質(zhì)的任何一個(gè)有關(guān)的特征任意組合應(yīng)用,反之亦然。例如,可以提供用于顯示一個(gè)導(dǎo)航顯示屏的裝置,它執(zhí)行一個(gè)傳送與一個(gè)窗口透明度有關(guān)的信息到一個(gè)窗口管理器的方法,等等。
下面將僅僅通過舉例并結(jié)合附圖對本發(fā)明的最佳特征進(jìn)行描述,其中

圖1顯示了一個(gè)典型的數(shù)字電視系統(tǒng)的結(jié)構(gòu);圖2是一個(gè)接收器/解碼器的框圖;圖3顯示了一個(gè)接收器/解碼器的結(jié)構(gòu);
圖4顯示了一個(gè)圖形系統(tǒng)的結(jié)構(gòu);圖5顯示了各個(gè)窗口的相互關(guān)系;圖6說明了透明窗口的原理;圖7說明了置于一個(gè)窗口下面的一個(gè)對象的繪制;圖8說明了在一個(gè)透明窗口系統(tǒng)中對重新繪制的管理;圖9說明了重新繪制兩個(gè)重疊窗口的不同模式;圖10說明了在應(yīng)用程序和窗口管理器之間的關(guān)系;圖11說明了在重新繪制兩個(gè)窗口期間的一個(gè)典型的繪制操作序列;圖12說明了一個(gè)網(wǎng)絡(luò)瀏覽器的一個(gè)屏幕顯示;圖13說明了該網(wǎng)絡(luò)瀏覽器的一個(gè)進(jìn)一步屏幕顯示;圖14說明了該網(wǎng)絡(luò)瀏覽器的一個(gè)進(jìn)一步屏幕顯示;以及圖15說明了該網(wǎng)絡(luò)瀏覽器的一個(gè)進(jìn)一步屏幕顯示。
數(shù)字電視系統(tǒng)一個(gè)數(shù)字電視系統(tǒng)的概述如圖1所示。本發(fā)明包含一個(gè)幾乎傳統(tǒng)的數(shù)字電視系統(tǒng)2,它使用已知的MPEG-2壓縮系統(tǒng)傳送壓縮的數(shù)字信號。更詳細(xì)地是,在一個(gè)廣播中心中MPEG-2壓縮器3接收一個(gè)數(shù)字信號流(通常是一個(gè)視頻信號流)。壓縮器3通過鏈接5與一個(gè)多路復(fù)用器和擾頻器4相連。
多路復(fù)用器4接收多個(gè)進(jìn)一步的輸入信號、組合傳輸流、并且經(jīng)由鏈接7將壓縮的數(shù)字信號傳送到廣播中心的一個(gè)發(fā)送器6,當(dāng)然鏈接7能夠采取各式各樣的形式,包括電信鏈路。發(fā)送器6經(jīng)由上行鏈路8向一個(gè)衛(wèi)星應(yīng)答器9傳送電磁信號,它們在衛(wèi)星應(yīng)答器中被電子處理,并且通常以最終用戶擁有或租用的一個(gè)反射器的形式經(jīng)由概念上的下行鏈路10傳播到地面接收器12。其它用于數(shù)據(jù)傳輸?shù)膫鬏斖ǖ喇?dāng)然是可能的,諸如地面廣播、電纜傳輸、組合的衛(wèi)星/電纜鏈路、電話網(wǎng)等。
由接收器12接收的信號被傳送到最終用戶擁有或租用的、并且連接到該最終用戶的電視機(jī)14的一個(gè)集成的接收器/解碼器13。接收器/解碼器13解碼所壓縮的MPEG-2信號到一個(gè)用于電視機(jī)14的電視信號里。盡管一個(gè)獨(dú)立的接收器/解碼器如圖1所示,但是該接收器/解碼器也可以是一個(gè)集成的數(shù)字電視的一部分。在這里使用的術(shù)語“接收器/解碼器”包含一個(gè)獨(dú)立的接收器/解碼器,諸如一個(gè)機(jī)頂盒,以及一臺具有一個(gè)集成的接收器/解碼器的電視。
在一個(gè)多通道系統(tǒng)中,多路復(fù)用器4處理從多個(gè)并行源接收的音頻與視頻信息,并且與發(fā)送器6相互作用以沿著相應(yīng)數(shù)目的通道傳播該信息。除了視聽信息之外,消息或應(yīng)用程序或其它任何類別的數(shù)字?jǐn)?shù)據(jù)可以被引入到某些或所有與傳送的數(shù)字音頻與視頻信息交錯的這些通道中。
一個(gè)條件訪問系統(tǒng)15與多路復(fù)用器4和接收器/解碼器13相連,并且部分地位于廣播中心中,部分地位于接收器/解碼器中。它允許最終用戶訪問來自于一個(gè)或多個(gè)廣播供應(yīng)商的數(shù)字電視廣播。一個(gè)能夠解密與商業(yè)供應(yīng)(即,由廣播供應(yīng)商出售的一個(gè)或幾個(gè)電視節(jié)目)有關(guān)的消息的智能卡能夠被插入到接收器/解碼器13中。使用接收器/解碼器13和智能卡,最終用戶可以要么以一種認(rèn)購方式或者要么以一種按次計(jì)費(fèi)的方式購買商業(yè)供應(yīng)。
如上所述,由系統(tǒng)傳送的節(jié)目在多路復(fù)用器4處被擾頻,條件和加密密鑰應(yīng)用于由訪問控制系統(tǒng)15確定的一個(gè)給定傳輸。以這種方式傳輸加密數(shù)據(jù),在計(jì)費(fèi)電視系統(tǒng)領(lǐng)域中是非常公知的。通常,加密數(shù)據(jù)與一個(gè)用于解擾頻該數(shù)據(jù)的控制字被一起傳送,該控制字本身由一個(gè)所謂的使用密鑰加密,并且以加密形式傳送。
然后該加密數(shù)據(jù)和加密控制字由接收器/解碼器13接收,該接收器/解碼器13能訪問存儲在一個(gè)插入到該接收器/解碼器中的智能卡上的使用密鑰的一個(gè)等效碼,以解密該加密控制字,爾后解擾頻所發(fā)送的數(shù)據(jù)。一個(gè)繳清費(fèi)用的認(rèn)購者將,例如在一個(gè)每月廣播一次的EMM(Entitlement Management Message,權(quán)利管理消息)中,接收解密該加密控制字所必需的使用密鑰以便允許查看該傳輸。
一個(gè)交互式系統(tǒng)16,也連接到多路復(fù)用器4和接收器/解碼器13,而且同樣部分地位于該廣播中心中,部分地位于接收器/解碼器中,它允許最終用戶與各個(gè)應(yīng)用程序經(jīng)由一個(gè)調(diào)制解調(diào)的返回通道17相互作用。調(diào)制解調(diào)的返回通道也可能用于在條件訪問系統(tǒng)15中使用的通信。
接收器/解碼器參見圖2,下面將描述接收器/解碼器13或機(jī)頂盒的部件。在這個(gè)附圖中顯示的這些部件將用功能塊來進(jìn)行描述。
接收器/解碼器13包含一個(gè)中央處理器20,它包括相關(guān)的存儲元件,而且適于從一個(gè)串行接口21、一個(gè)并行接口22、一個(gè)調(diào)制解調(diào)器23(連接到圖1中的調(diào)制解調(diào)返回通道17)接收輸入數(shù)據(jù),并且在該解碼器的前面板上切換觸點(diǎn)24。
另外,該接收器/解碼器還適于經(jīng)由一個(gè)控制單元26從一個(gè)紅外線遠(yuǎn)程控制25接收輸入,而且還擁有兩個(gè)分別適于讀取銀行卡或預(yù)定智能卡29、30的智能卡閱讀器27、28。預(yù)定智能卡閱讀器28與一個(gè)插入的預(yù)定卡30以及一個(gè)條件訪問單元29相接合,以提供必要的控制字到一個(gè)多路分用器/解擾器30以便允許加密的廣播信號被解擾頻。解碼器還包括一個(gè)傳統(tǒng)的調(diào)諧器31和解調(diào)制器32,以在被單元30濾波和多路分用之前接收和解調(diào)制該衛(wèi)星傳輸。
如在這個(gè)說明書中使用的那樣,一個(gè)應(yīng)用程序最好是一段用于控制最好是該接收器/解碼器13的高級功能的計(jì)算機(jī)代碼。例如,當(dāng)最終用戶把遠(yuǎn)程控制25的焦點(diǎn)放置在在電視機(jī)14的屏幕上看到的一個(gè)按鈕對象上、并且按下一個(gè)確認(rèn)鍵時(shí),運(yùn)行與該按鈕有關(guān)的指令序列。
一個(gè)交互式應(yīng)用程序應(yīng)最終用戶的請求提出菜單且執(zhí)行指令,并且提供與該應(yīng)用程序目的有關(guān)的數(shù)據(jù)。應(yīng)用程序可以是駐留的應(yīng)用程序,即存儲在接收器/解碼器13的ROM(或FLASH(閃速存儲器),或其它非易失性存儲器)中,或是被廣播和下載到接收器/解碼器13的RAM或者FLASH存儲器里。
應(yīng)用程序存儲在接收器/解碼器13中的存儲單元內(nèi),而且表示為資源文件。資源文件包含圖形對象說明單元文件、變量塊單元文件、指令序列文件、應(yīng)用程序文件和數(shù)據(jù)文件。
接收器/解碼器包含被分成一個(gè)RAM部分、一個(gè)FLASH部分、和一個(gè)ROM部分的存儲器,但是這個(gè)物理結(jié)構(gòu)不同于邏輯結(jié)構(gòu)。該存儲器可以被進(jìn)一步分成與各個(gè)接口有關(guān)的存儲器部分。從一個(gè)觀點(diǎn)來說,該存儲器能夠被認(rèn)為是硬件的一部分;從另一個(gè)觀點(diǎn)來說,該存儲器能夠被認(rèn)為是支持或包含所顯示的、除硬件之外的整個(gè)系統(tǒng)。
接收器/解碼器包含五個(gè)這樣組織的軟件層以便使該軟件能夠在任何接收器/解碼器中以及利用任何操作系統(tǒng)實(shí)現(xiàn)。參見圖3,這各個(gè)軟件層是應(yīng)用層(Application Layer)50、應(yīng)用編程接口(ApplicationProgramming Interface)(API)層52、虛擬機(jī)層(Virtual Machine Layer)54、設(shè)備層接口(Device Layer Interface)56和系統(tǒng)軟件/硬件層(SystemSoftware/Hardware Layer)58。各個(gè)層的描述如下。
應(yīng)用層(Application Layer)應(yīng)用層50包含駐留在接收器/解碼器中或是下載到該接收器/解碼器的應(yīng)用程序。它們可以是由客戶使用的交互式應(yīng)用程序,例如用Java、HTML、MHEG-5或其它語言編寫,或者它們可以是由接收器/解碼器使用以運(yùn)行這種應(yīng)用的應(yīng)用程序。這個(gè)層基于由虛擬機(jī)層提供的一組開放的應(yīng)用編程接口(APIs)。這個(gè)系統(tǒng)允許應(yīng)用程序在運(yùn)行時(shí)或在要求時(shí)被下載到接收器/解碼器的閃速存儲器或RAM存儲器中。能夠使用協(xié)議、諸如數(shù)據(jù)存儲媒體指令與控制(Data Storage Media Command andControl,DSMCC)、網(wǎng)絡(luò)文件服務(wù)(Network File Server,NFS)或其它協(xié)議,以壓縮的或未壓縮的格式傳送該應(yīng)用程序代碼。
交互式應(yīng)用程序是用戶與其相互作用以獲得產(chǎn)品和服務(wù)、諸如電子程序指南、遠(yuǎn)程銀行事務(wù)應(yīng)用程序和游戲等的應(yīng)用程序。提供了各種安全特征用于這些下載的應(yīng)用程序和數(shù)據(jù),如下所述·如果沒有首先為預(yù)定網(wǎng)絡(luò)進(jìn)行驗(yàn)證,則不能下載任何內(nèi)容到接收器/解碼器中,這防止了任何未登記的軟件在該接收器/解碼器中運(yùn)行。這意味著在接收器/解碼器中運(yùn)行的任何軟件被識別了而且已經(jīng)被完全地檢測了。
·一個(gè)安全管理器(Security Manager)限制應(yīng)用程序?qū)Ω鱾€(gè)存儲器區(qū)域的訪問,因此保證了數(shù)據(jù)完整性。
·該系統(tǒng)能夠與任何利用安全處理器(例如,插入在接收器/解碼器中的智能卡)的條件訪問系統(tǒng)相接口。
下列駐留的應(yīng)用程序用來管理交互式應(yīng)用程序·Boot(引導(dǎo))。Boot應(yīng)用程序是當(dāng)接收器/解碼器通電時(shí)載入的第一個(gè)應(yīng)用程序。Boot應(yīng)用程序起動在虛擬機(jī)(Virtual Machine)中不同的“管理器”,其中第一個(gè)是Application Manager(應(yīng)用程序管理器)。
·Application Manager(應(yīng)用程序管理器)。Application Manager應(yīng)用程序管理器管理在接收器/解碼器中運(yùn)行的交互式應(yīng)用程序,即它的開始、停止、中止、恢復(fù)、處理事件和涉及在應(yīng)用程序之間的通信。它允許多個(gè)應(yīng)用程序同時(shí)運(yùn)行,因此涉及在它們當(dāng)中的資源分配。這個(gè)應(yīng)用程序?qū)τ脩羰峭耆该鞯摹?br> ·SetUp(設(shè)置)。SetUp應(yīng)用程序的目的是配置接收器/解碼器,主要是在接收器/解碼器被第一次使用時(shí)。它執(zhí)行諸如搜索電視頻道、設(shè)置日期與時(shí)間、建立用戶偏愛項(xiàng)等的動作。然而,SetUp應(yīng)用程序能被用戶隨時(shí)使用以改變接收器/解碼器的配置。
·Zapping(轉(zhuǎn)換頻道)。Zapping應(yīng)用程序被用來使用Program-up(上一個(gè)頻道)、Program-down(下一個(gè)頻道)和數(shù)字鍵變換頻道。當(dāng)另一個(gè)形式的zapping(頻道轉(zhuǎn)換)被使用、例如通過一個(gè)標(biāo)題(導(dǎo)向)應(yīng)用程序使用時(shí),停止該Zapping應(yīng)用程序被。
API層(API Layer)API層52提供了用于交互式應(yīng)用程序開發(fā)的高級實(shí)用程序。它包括幾個(gè)構(gòu)成這個(gè)高級API的程序包。程序包提供了運(yùn)行交互式應(yīng)用程序所必需的全部功能。該程序包可由應(yīng)用程序訪問。
在一個(gè)最佳實(shí)施例中,該API適于運(yùn)行用Java編程語言編寫的應(yīng)用程序。此外,它能夠解釋HTML及其它格式、諸如MHEG-5。除這些解釋程序之外,它還包含按照作為規(guī)定的要求可分離和可擴(kuò)展的其它程序包和服務(wù)模塊。
虛擬機(jī)層(Virtual Machine Layer)虛擬機(jī)層54由語言解釋程序和各種模塊和系統(tǒng)組成。它包含在接收器/解碼器中接收和執(zhí)行交互式應(yīng)用程序所必需的所有案面,包括下列內(nèi)容·Language Interpreters(語言解釋器)。能夠安裝不同的解釋器以便符合將被讀取的應(yīng)用程序類型。這些包括Java、HTML、MHEG-5等等。
·Service Information(Service Information SI)Engine(服務(wù)信息引擎)。SI Engine加載并監(jiān)視公用的數(shù)字視頻廣播(Digital VideoBroadcasting,DVB)或程序系統(tǒng)信息協(xié)議(Program System InformationProtocol,PSIP)表,并把它們放置到一個(gè)高速緩存中。它允許需要包含在它們中的數(shù)據(jù)的應(yīng)用程序訪問這些表。
·Scheduler(調(diào)度器)。這個(gè)模塊允許預(yù)先為空的、多線程的調(diào)度,其中每個(gè)線程都具有它自己的事件隊(duì)列。
·Memory Manager(存儲器管理器)。這個(gè)模塊管理對存儲器的訪問。當(dāng)必要時(shí)它還自動地壓縮在存儲器中的數(shù)據(jù),并且執(zhí)行自動的垃圾收集。
·Event Manager(事件管理器)。這個(gè)模塊允許事件依據(jù)優(yōu)先級被觸發(fā)。它管理定時(shí)器和事件抓取,并且允許應(yīng)用程序彼此發(fā)送事件。
·Dynamic Linker(動態(tài)鏈接器)。這個(gè)模塊允許確定從本地Java函數(shù)中產(chǎn)生的地址,從下載到RAM里的一個(gè)Java類中加載本地方法,并且解決從下載的本地代碼到ROM的調(diào)用。
·Downloader(下載器)。這個(gè)模塊使用從一個(gè)遠(yuǎn)程DSMCC圓盤傳送帶或通過NFS協(xié)議加載的自動數(shù)據(jù),使下載的文件以與駐留文件同樣的方式被訪問。也提供了存儲器清除、壓縮和驗(yàn)證。
·Class Manager(類管理器)。這個(gè)模塊加載類,并且解決任何類引用問題。
·File System(文件系統(tǒng))。這個(gè)模塊是緊湊的,而且被優(yōu)化以管理一個(gè)具有多個(gè)ROM、閃速存儲器、RAM和DSMCC部分的分級文件系統(tǒng)。閃速存儲器的完整性被保證以不受任何事故的影響。
·Security Manager(安全管理器)。這個(gè)模塊驗(yàn)證應(yīng)用程序,并且控制應(yīng)用程序?qū)`敏的存儲器及其它機(jī)頂盒區(qū)域的訪問。
·Graphics System(圖形系統(tǒng))。這個(gè)系統(tǒng)是面向?qū)ο蟮?,而且被?yōu)化了。它包含圖形窗口和對象管理,以及一個(gè)具有多種語言支持的矢量字體引擎。
此外,支持DAVIC資源通知模型以便有效地管理客戶資源。
設(shè)備層(Device Layer)設(shè)備層56包含設(shè)備管理器(Device Manager)和設(shè)備。設(shè)備是包含了管理外部事件和物理接口所必需的邏輯資源的軟件模塊。設(shè)備層管理在驅(qū)動程序和應(yīng)用程序之間的通信通道,并且提供增強(qiáng)的錯誤異常檢查。某些被管理的設(shè)備的例子是卡閱讀器、調(diào)制解調(diào)器、網(wǎng)絡(luò)、PCMCIA(Personal Computer Memory Card International Association,個(gè)人計(jì)算機(jī)存儲器卡國際聯(lián)合會)、LED(發(fā)光二極管)顯示器等等。
由于API層從上面控制這些設(shè)備,所以程序設(shè)計(jì)員不必直接處理這個(gè)層。
系統(tǒng)軟件/硬件層(System Software/Hardware Layer)系統(tǒng)軟件/硬件層58由接收器/解碼器的制造商提供。由于該系統(tǒng)的模塊化,以及由于由OS提供的服務(wù)(諸如事件調(diào)度和存儲器管理)是虛擬機(jī)的一部分,所以較高層不依賴于一個(gè)特定的實(shí)時(shí)操作系統(tǒng)(RTOS)或一個(gè)特定的處理器。
圖形系統(tǒng)(Graphic System)下面將描述作為虛擬機(jī)54的一部分的圖形系統(tǒng)60。參見圖4,圖形系統(tǒng)圖形系統(tǒng)包含窗口小部件工具箱62、窗口系統(tǒng)64和圖形庫68,其中該窗口小部件工具箱62允許圖形對象諸如按鈕被繪制出來。窗口系統(tǒng)64管理一個(gè)多窗口系統(tǒng),在該多窗口系統(tǒng)中應(yīng)用程序可以繪制窗口以及調(diào)整窗口大小。繪制一個(gè)窗口的應(yīng)用程序被稱為那個(gè)窗口的客戶。
舉例來說,一個(gè)應(yīng)用程序可以生成一個(gè)窗口,該窗口在該屏幕一個(gè)區(qū)域中具有一個(gè)選擇菜單,同時(shí)顯示了橫穿在該窗口后面整個(gè)屏幕的一幅視頻圖象。在這個(gè)例子中,參見圖2,當(dāng)視頻來自于視頻解碼器34時(shí),由CPU20生成該菜單。這兩者在CPU20的控制下,在圖形處理器26中混合。更多的復(fù)雜方案也是可能的,其中多個(gè)窗口的每一個(gè)在其內(nèi)部都具有靜止或活動的圖像。
窗口系統(tǒng)保持一個(gè)窗口樹,它定義了窗口之間的關(guān)系。一個(gè)窗口樹的例子如圖5所示。參見圖5,已經(jīng)從其打開一個(gè)特定窗口70的窗口72被稱為母親,從窗口70打開的窗口74、76被稱為女兒,以及從同一個(gè)母親窗口72打開的窗口78、80被稱為姐妹。
透明窗口(Transparent Windows)在一個(gè)最佳實(shí)施例中,窗口系統(tǒng)管理被稱為透明窗口的窗口。透明窗口是一個(gè)不具有背景的窗口,即通過它能夠至少部分地看到置于下面的圖像。下面將結(jié)合圖6描述透明窗口的原理。
圖6a顯示了兩個(gè)不重疊的窗口100、102。窗口100包含對象104和不透明背景106;窗口102包含兩個(gè)對象108、110和不透明背景112。圖6b顯示了當(dāng)圖6a中的這兩個(gè)窗口重疊時(shí)的情況。在這種情況下,重疊窗口在這兩個(gè)窗口的共同區(qū)域中完全遮蔽了置于下面的窗口。圖6c顯示了與圖6a中相同的情況,但是用于該重疊窗口被聲明為一個(gè)透明窗口的情況。在這種情況下,兩個(gè)對象108、110仍然可見,但是現(xiàn)在背景112是透明的,以便通過它可以看到窗口100。在如圖6c所示的例子中,背景112是簡單地未被繪制。使用透明窗口允許在不同的窗口中創(chuàng)建獨(dú)立的設(shè)計(jì),同時(shí)允許在置于下面的窗口中的圖像通過重疊窗口被看到。本系統(tǒng)還允許顯示多個(gè)窗口,它可以包含透明和不透明窗口的一個(gè)組合。
應(yīng)當(dāng)注意到,一個(gè)透明窗口可以具有一個(gè)完全透明的背景,或者是它可以具有一個(gè)具有一定透明度系數(shù)的背景,在這種情況下依據(jù)該透明度系數(shù)將背景與置于下面的對象進(jìn)行混合。
提供特定的機(jī)制來管理透明窗口。這些機(jī)制處理在一個(gè)透明窗口之下進(jìn)行繪制的情況。如將要說明的那樣,除非是采取了特定動作以防止這種情況,這種繪制可以導(dǎo)致圖像在該透明窗口中惡化。
圖7a顯示了當(dāng)一條線被繪制在一個(gè)具有一個(gè)不透明背景的窗口下面時(shí)的情況。在這種情況中,當(dāng)繪制線114時(shí),在窗口102中沒有發(fā)生變化。圖7b顯示了當(dāng)窗口102被聲明為一個(gè)透明窗口時(shí)的情況。在這種情況下,當(dāng)繪制線114時(shí),它還出現(xiàn)在窗口102中,從而使它在窗口102中覆蓋對象108和110。
在一個(gè)透明窗口中避免覆蓋對象的一種方法是,防止在該窗口下面進(jìn)行繪制。然而,在一個(gè)最佳實(shí)施例中,在一個(gè)透明窗口中的對象覆蓋被校正了,如下所述。
首先,確定下來受該繪制影響的區(qū)域。這通過當(dāng)進(jìn)行繪制時(shí),監(jiān)視繪制的最大和最小坐標(biāo)進(jìn)行。然后窗口系統(tǒng)搜索該窗口樹,以識別位于受影響區(qū)域上的任何透明窗口。然后發(fā)送一個(gè)所謂的Expose Event(顯露事件)到所有這種窗口的客戶。Expose Event通知這些客戶應(yīng)該重新繪制受影響的區(qū)域。一個(gè)窗口的一個(gè)客戶負(fù)責(zé)那個(gè)窗口的內(nèi)容,因此該客戶能夠重新繪制一個(gè)被覆蓋的窗口。該客戶重新繪制與受影響區(qū)域重合的那部窗口。
上述事件序列在圖8中進(jìn)行了說明。參見圖8a,由矩形116包圍的區(qū)域是受到線114的繪制影響的區(qū)域。然后窗口系統(tǒng)識別窗口102為一個(gè)位于受影響區(qū)域116上面的透明窗口,而且發(fā)送一個(gè)Expose Event到那個(gè)窗口。參見圖8b,受該繪制影響的這部窗口102由矩形118表示。在矩形118內(nèi)部的區(qū)域然后被該客戶重新繪制。如圖8c所示,被線114的繪制破壞的這部窗口102因此被重新繪制,所以對象108和110就不再由線條114覆蓋。
上述機(jī)制允許一個(gè)應(yīng)用程序在一個(gè)窗口中繪制圖像,即使它被一個(gè)透明窗口覆蓋,也不會破壞在重疊窗口中的圖像。
被發(fā)送到重疊窗口的Expose Events的數(shù)目(即該重疊窗口被重新繪制的次數(shù))與所生成的繪制命令數(shù)目成正比。每當(dāng)單個(gè)繪制操作進(jìn)行時(shí)生成一條繪制命令。為了生成一幅復(fù)雜的圖像,大量的繪制操作可能是必需的,其中每一個(gè)都包括例如繪制一條直線或曲線、一個(gè)方框、一個(gè)圓周、或其它的對象。這能夠?qū)е麓罅坑糜谥匦吕L制窗口的處理,它可能降低該系統(tǒng)的性能。如果多個(gè)窗口、特別是多個(gè)重疊的透明窗口被打開,則情況會更糟,其中每個(gè)透明窗口都可能要求一個(gè)Expose Event。
在本發(fā)明的一個(gè)最佳實(shí)施例中,產(chǎn)生的Expose Event的數(shù)目、以及由此一個(gè)重疊窗口被重新繪制的次數(shù),通過在一定的環(huán)境中取消ExposeEvent的產(chǎn)生而減少了。在此提供了一個(gè)稱為win_over_mode的參數(shù),它規(guī)定了Expose Event的產(chǎn)生將被取消的情況。參數(shù)win_over_mode允許客戶應(yīng)用程序定義在決定一個(gè)Expose Event將被發(fā)送到哪些窗口時(shí),將考慮哪些窗口。
在該最佳實(shí)施例中,就Expose Event來說,win_over_mode參數(shù)可以定義下列情況-Clip All(全部剪輯)正常功能,其中考慮所有的窗口-Ignore Inferiors(忽略下輩)女兒和女兒的女兒被忽略了-Ignore Sisters(忽略姐妹)姐妹和它們的女兒被忽略了-Ignore Others(忽略其它)既不是姐妹又不是女兒的所有窗口都被忽略了-Ignore No Background(忽視沒有背景)所有的透明窗口被忽略了-Ignore All(全部忽略)所有的窗口都被忽略了。
從該clipping(剪輯)計(jì)算中被排除的窗口不接收Expose Events,因此沒有被重新繪制。例如,可以知道姐妹窗口從不覆蓋在其中進(jìn)行繪制的窗口。做為選擇,可以決定推遲重新繪制所有的透明窗口直到該繪制完成為止。
一旦該繪制完成后,任何受到影響的窗口都可以被重新繪制。這通過監(jiān)視繪制的最大和最小坐標(biāo)來進(jìn)行。當(dāng)繪制完成時(shí),則win_over_mode參數(shù)被設(shè)置為clip all(全部剪輯)。然后使用該繪制的最大和最小坐標(biāo)圍繞所有受影響的區(qū)域繪制一個(gè)虛擬的矩形。通過繪制一個(gè)虛擬窗口,產(chǎn)生一個(gè)發(fā)送到在該窗口樹中所有受到影響的窗口的Expose Event。然后,以如上所述的方法重新繪制具有與該受影響區(qū)域重合的區(qū)域的窗口。
總之,能夠通過推遲重新繪制受到一個(gè)應(yīng)用程序執(zhí)行的繪制操作影響的透明窗口,來獲得更大的效率。
然而,作為窗口系統(tǒng)本身可以決定重新繪制一個(gè)窗口的一部分的事實(shí)的結(jié)果,例如作為用戶移動或縮放窗口、或是移動或縮放一個(gè)重疊窗口的結(jié)果,仍然存在一個(gè)問題。在這種情況下,不需要更多的信息,窗口系統(tǒng)總是發(fā)送Expose Events到適當(dāng)?shù)拇翱谝源_保一個(gè)正確結(jié)果;結(jié)果,發(fā)送了更多的Expose Events,因此重新繪制窗口要比如果客戶控制該處理時(shí)花費(fèi)更多的時(shí)間。
參見圖9,說明了如上所述的問題和它的解決方案。圖9a顯示了以下兩個(gè)窗口的一個(gè)典型配置一個(gè)透明窗口Window A150和一個(gè)它部分重疊的不透明窗口Window B152。
在圖9b中,對應(yīng)于該最佳實(shí)施例的一個(gè)變體,舉例說明了繼由窗口管理器決定重新繪制窗口Window B的一部分之后的,一個(gè)典型的ExposeEvents序列。Expose Events 160和162被分別發(fā)送給窗口Window B152和窗口Window A150。接收Expose Event 160的窗口Window B被重新繪制,借此產(chǎn)生一個(gè)進(jìn)一步的Expose Event 164,它被發(fā)送給窗口WindowA。接收兩個(gè)Expose Events的窗口Window A因此被重新繪制兩次。
在圖9c中,說明了該最佳實(shí)施例,有關(guān)Expose Events優(yōu)化的信息可借助于窗口Window A150的窗口屬性,由窗口管理器獲得。考慮這個(gè)信息,一個(gè)進(jìn)一步的Expose Event 170最初僅僅被發(fā)送給窗口Window B152。隨后窗口Window B的重新繪制則生成所需的Expose Event 172,它被發(fā)送給窗口Window A150以便使它僅僅被重新繪制一次。
在該最佳實(shí)施例中定義了Expose Event的優(yōu)化的窗口屬性,名稱為no_bg_win-management,而且采用了以下值-Automatic在該窗口中的每個(gè)繪制操作都導(dǎo)致把事件發(fā)送給透明窗口。
-LetMeDoIt一旦各種重新繪制已經(jīng)完成了以后,客戶調(diào)用一個(gè)函數(shù)(SendEventToNoBgWindow)以指定重新繪制的范圍(通常提供四個(gè)指定了一個(gè)界限矩形的角的坐標(biāo));這個(gè)函數(shù)確定它然后必須向其發(fā)送Expose Events的透明窗口的范圍,因此引起了它們依次重新繪制。有關(guān)Expose Events優(yōu)化的信息當(dāng)然可以由窗口管理器經(jīng)由其它手段、諸如函數(shù)調(diào)用等獲得。
從以上可以看出,許多優(yōu)點(diǎn)、諸如總效率、易于使用、有效的代碼再用(由于透明窗口管理代碼只在窗口管理器中出現(xiàn)一次,而不是在不同的應(yīng)用程序中出現(xiàn)若干次)、集中控制、高速等等都是通過集成透明窗口管理到窗口管理器里所提供的。
參考圖10,下面將更詳細(xì)地描述在窗口管理器和窗口的客戶(應(yīng)用程序)之間的關(guān)系。
在屏幕2000上每個(gè)窗口2010、2012、2014分別具有一個(gè)相應(yīng)的窗口定義數(shù)據(jù)塊2020、2022、2024。每個(gè)窗口還與一個(gè)特定的客戶(應(yīng)用程序)有關(guān);在這種情況下,窗口2010和它的相應(yīng)窗口定義數(shù)據(jù)塊2020與第一個(gè)應(yīng)用程序2030有關(guān),且窗口2012、2014和它們的相應(yīng)窗口定義數(shù)據(jù)塊2022、2024與應(yīng)用程序2032有關(guān)。窗口管理器2050管理整個(gè)系統(tǒng),并且能訪問所有的窗口定義數(shù)據(jù)塊2020、2022、2024,而且能夠通過使用事件、消息和/或函數(shù)調(diào)用與每個(gè)應(yīng)用程序2030、2032進(jìn)行通信。
窗口定義數(shù)據(jù)塊包含各種與相應(yīng)窗口狀態(tài)有關(guān)的屬性、諸如尺寸、位置、邊界風(fēng)格和行為方式,而且包含例如如上所述的no_bg_win-management屬性。與一個(gè)窗口透明度有關(guān)的信息也能夠存儲在窗口定義數(shù)據(jù)塊中。
在最佳實(shí)施例中,借助于一個(gè)到窗口管理器2050的函數(shù)調(diào)用2042,與一個(gè)窗口2010透明度有關(guān)的信息被存儲在窗口定義數(shù)據(jù)塊2020中。然而,在該最佳實(shí)施例的變體中,該信息經(jīng)由其它手段發(fā)送給窗口管理器,或是直接被存儲在窗口定義數(shù)據(jù)塊2020中,這由鏈路2040示意地表示。除了能夠與窗口管理器2050通信之外,應(yīng)用程序能夠直接在彼此之間進(jìn)行通信,這由鏈路2044示意地表示。
參考圖11,下面將描述兩個(gè)重疊窗口被重新繪制的一個(gè)例子,它說明了被延遲的重疊透明窗口的重新繪制、以及集成透明窗口的管理到窗口管理器里的上述特征。在這個(gè)例子中,相似的部分用相似的數(shù)字表示。
兩個(gè)窗口C2100和D2102的內(nèi)容如圖11a所示。窗口Window C2100是透明的,而且包含一個(gè)三角形2110和一個(gè)矩形2112。窗口Window D2102是不透明的,而且包含三條垂直線2114、2116、2118。
參見圖11b,當(dāng)顯示在屏幕上時(shí),這兩個(gè)窗口如圖所示交錯,其中窗口Window C2100重疊窗口Window D2102,部分地遮蔽了Window D的內(nèi)容。
參見圖11c,發(fā)生了一個(gè)與Window D有關(guān)的刷新事件,使得WindowD2102的不透明背景2120和邊界2122被重新繪制,并覆蓋重疊的透明窗口Window C2100。此外,在由該客戶(應(yīng)用程序)執(zhí)行的第一個(gè)繪制操作中,這三條垂直線2124中的第一條被繪制出來。應(yīng)當(dāng)注意到,在當(dāng)前例子中,窗口管理器在繪制該窗口的“系統(tǒng)”區(qū)域(例如,邊界和背景)之后不重新繪制重疊窗口,但是在該最佳實(shí)施例的變體中,這樣的一個(gè)重新繪制在請求客戶程序(應(yīng)用程序)重新繪制該“用戶”區(qū)域之前發(fā)生。
在圖11d和11e中說明了在每個(gè)后續(xù)繪制操作之后重新繪制重疊窗口的最簡單情況。在圖11d中,向窗口Window C2100發(fā)送一個(gè)Expose事件之后,重新繪制重疊的那個(gè)窗口。參見圖11e,然后進(jìn)行下一個(gè)繪制操作,繪制垂直線2126。如上所述,在這種情況下,最終該重疊窗口將總共被重新繪制三次,比必需的多兩次。
如上所述,并且參見圖11f,在該重疊窗口的重新繪制被延遲的情況下,在重疊窗口Window C2100被重新繪制之前,全部的三條垂直線2124、2126、2128都被繪制在Window D2102中,此后這些窗口具有如圖11b所示的正確外觀。
下面將描述一個(gè)進(jìn)一步例子,其中一個(gè)將被繪制的對象需要十條繪制命令,再次著重說明延遲重疊的透明窗口的重新繪制的特征。如前所述,該對象將被繪制在一個(gè)包含了透明窗口的環(huán)境中。
依據(jù)如上所述的方法,可以選擇兩個(gè)過程中的一個(gè)。第一個(gè)過程如下1.設(shè)置win_over_mode參數(shù)為Ignore No Background2.執(zhí)行這十個(gè)繪制操作。由于全部的透明窗口都被忽略了,所以沒有產(chǎn)生Expose Events。
3.設(shè)置win_over_mode參數(shù)為Clip All4.繪制一個(gè)虛擬的、包含了其中已經(jīng)被繪制的所有區(qū)域的矩形。這個(gè)操作產(chǎn)生一個(gè)被發(fā)送到受到影響窗口的Expose Event。
第二個(gè)可以被選擇的較短過程如下1.設(shè)置no_bg_win-management屬性為LetMeDoIt2.執(zhí)行十個(gè)繪制操作。由于全部的透明窗口都被忽略了,所以沒有產(chǎn)生Expose Events。
3.傳遞這十個(gè)繪制操作的物理范圍作為一個(gè)參數(shù),調(diào)用SentEventToNoBgWindow()。然后Expose Events被發(fā)送到受影響的窗口。
應(yīng)當(dāng)注意到兩個(gè)過程都獲得了相同的結(jié)果。
在上述實(shí)例中,受影響的窗口僅僅被重新繪制一次,而不是象如果為每個(gè)繪制指令都產(chǎn)生一個(gè)Expose Event的情況那樣、這些窗口被重新繪制十次。以這種方式,可以在處理中有相當(dāng)多的節(jié)省。
在該最佳實(shí)施例的一個(gè)變體中,使用了一個(gè)進(jìn)一步的重新繪制窗口的方法。這個(gè)方法包含在一個(gè)具體數(shù)目的繪制操作之后,發(fā)送一個(gè)信號以重新繪制重疊窗口,其中該數(shù)目通常在該繪制操作之前被確定。參考總共要求十個(gè)繪制操作的上述實(shí)例,如果該確定的數(shù)目為5,則將在第5個(gè)和第10個(gè)繪制操作之后重新繪制任何重疊窗口。
這個(gè)重新繪制方法提供了重新繪制比如果在每個(gè)繪制操作之后就進(jìn)行重新繪制不頻繁的優(yōu)點(diǎn),還提供了一個(gè)進(jìn)一步的優(yōu)點(diǎn)如果大量的連續(xù)繪制操作正執(zhí)行,保持該屏幕相對頻繁地被刷新。在刷新之前等候的繪制操作數(shù)目能夠幾乎是任何數(shù)目,例如,取決于當(dāng)前加載的處理器,從1開始(但是一般將在1到1000之間)。該計(jì)數(shù)和重新繪制的處理可以要么由該客戶處理要么由該窗口管理器處理。
使用如上所述、關(guān)于延遲該透明窗口的重新繪制的優(yōu)化,允許一個(gè)應(yīng)用程序使用透明窗口時(shí),在涉及的處理量中有一個(gè)較大的折扣。這在其中處理能力可能有限、諸如接收器/解碼器的環(huán)境中,尤其有利。
也提供了為接收器/解碼器所特有的進(jìn)一步優(yōu)點(diǎn)。例如,因?yàn)榇翱谀軌蚋行У卦诒舜酥蠈盈B,透明窗口的使用一般地能夠允許提供一個(gè)更小的窗口顯示。對一般在使用中覆蓋在一個(gè)視頻圖像上的窗口顯示(通過如上所述的圖形處理器,其既從該視頻解碼器又該窗口系統(tǒng)獲取輸入),一個(gè)更小的窗口顯示是高度可取的,因?yàn)楦俚囊曨l圖像將被遮蔽。
此外,當(dāng)顯示在一個(gè)電視上(例如,其通常不能支持和計(jì)算機(jī)監(jiān)視器一樣高的分辨度)時(shí),一般使用的顯示透明窗口的方法(與混和方法相比)能夠產(chǎn)生一個(gè)較高對比度的圖象。
參考圖12到15,將描述一個(gè)進(jìn)一步實(shí)例,涉及如上所述的該透明窗口系統(tǒng)的一個(gè)特定應(yīng)用程序即,用于一個(gè)接收器/解碼器的一個(gè)國際互連網(wǎng)瀏覽器應(yīng)用程序。
圖12顯示了該國際互連網(wǎng)瀏覽器的主要屏幕導(dǎo)航顯示屏的一個(gè)屏幕截圖。該主要屏幕顯示了一個(gè)包含該主菜單的縱向鏈1100,其中該主菜單包含作為一個(gè)鏈接列表的各個(gè)按鈕。該按鈕通過該鏈的鏈接單元進(jìn)行鏈接。在圖12的鏈1100中顯示的按鈕包含RELOAD STOP按鈕1110、PREVIOUS按鈕1120,NEXT按鈕1130、HISTORY按鈕1140、BOOKMARK按鈕1150、SETTINGS按鈕1160和QUIT按鈕1170。
該主菜單鏈1100被安排以附加在顯示在畫面1101上的超文本標(biāo)志語言文件(HTML)上。在圖12中,除了該主菜單鏈1100之外沒有HTML文件被顯示,屏幕1101為空。
該用戶具有一個(gè)控制器,利用該控制器他能夠在在該屏幕1101上的對象之間定位,突出顯示對象并且選定對象。在本實(shí)例中,使用的控制器是一個(gè)電視遙控裝置。當(dāng)顯示一個(gè)HTML頁時(shí),遙控器的任何按鈕調(diào)用鏈1100(工具條)。鏈1100還能夠由該用戶打開和關(guān)閉。
圖13顯示了具有一個(gè)HTML文件打開的圖12的屏幕。在圖13中,現(xiàn)在PREVIOUS按鈕1120被突出顯示。
圖14顯示了,當(dāng)突出顯示在PREVIOUS按鈕1120上時(shí),包含一個(gè)文字框1122的″tooltip(工具提示)″如何能在該屏幕出現(xiàn)。在本實(shí)例中,一旦相關(guān)的圖標(biāo)被突出顯示時(shí),顯示該工具提示。能夠設(shè)置這個(gè)首選項(xiàng)以便當(dāng)該按鈕被突出顯示時(shí),在一個(gè)延遲之后顯示該工具提示。文本框1122包含詞″previous(前面)″,以表示PREVIOUS按鈕1120的功能。通過按下SELECT鍵1186激活該P(yáng)REVIOUS按鈕,瀏覽器轉(zhuǎn)移到查看過的前一頁。
在返回到圖12到圖14的討論之前,現(xiàn)在將描述用于繪制上述導(dǎo)航鏈(在其它東西當(dāng)中)的一個(gè)″widget set(窗口小部件集合)″。一個(gè)這樣一個(gè)窗口小部件集合的特定應(yīng)用程序?qū)⑻峁┰谝粋€(gè)用于數(shù)字電視的接收器/解碼器的一個(gè)GUI顯示中的窗口小部件。在其它東西當(dāng)中,該窗口小部件集合包含一組基本的窗口小部件類別410,其在其它當(dāng)中,包含,窗口和對話框框架、一個(gè)滑動器控制、一個(gè)按鈕、一個(gè)復(fù)選框、一個(gè)正文域、以及一個(gè)文本編輯框。
每一窗口小部件類別都實(shí)現(xiàn)方法和事件處理器,以控制該窗口小部件的操作。該窗口小部件類別也可以包含用于繪制該窗口小部件某些部分的方法。然而,為了為該窗口小部件提供一個(gè)特定外貌或者″外觀″,該窗口小部件類別引用與該窗口小部件類別相關(guān)的一個(gè)外觀對象類別的繪制方法。
一個(gè)外觀在其它東西當(dāng)中,包含一個(gè)顏色的定義,以便使與一個(gè)特定外觀實(shí)例有關(guān)的任何窗口小部件實(shí)例,使用在那個(gè)外觀實(shí)例中定義的顏色。在一個(gè)實(shí)施例中,一個(gè)外觀定義了幾種顏色,諸如黑色、暗灰色、中灰色、淺灰色、非常淺灰色、白色、和突出顯示顏色。重要地,以及此外,它也定義了一個(gè)透明色。
圖15更詳細(xì)地顯示了如上所述的導(dǎo)航器功能按鈕(1410)的最高等級鏈,可以看見在它下面的一個(gè)網(wǎng)頁的一部分(1411)。
如先前所述,該主要屏幕顯示一個(gè)垂直條(主菜單)(1410),它由一系列按鈕組成。一個(gè)按鈕實(shí)際上是一個(gè)長方形或者正方形區(qū)域(例如,32×32像素)。當(dāng)該圖形光標(biāo)進(jìn)入一個(gè)區(qū)域時(shí),那個(gè)區(qū)域(窗口)接收該焦點(diǎn)。
鑒于以上所述,人們能夠概括出每個(gè)區(qū)域是一個(gè)窗口,而且從圖15中可以看出,這些窗口的每一個(gè)的背景都被布置為透明的,因此允許該工具條(包含一個(gè)交互式前景對象)的每個(gè)按鈕在當(dāng)覆蓋在國際互連網(wǎng)瀏覽器上時(shí),具有一個(gè)表面上非長方形的形狀。這除了允許國際互連網(wǎng)瀏覽器的設(shè)計(jì)師更靈活以外,能夠允許具有后續(xù)優(yōu)點(diǎn)的按鈕的一個(gè)更緊湊布局。
上述國際互連網(wǎng)瀏覽器和導(dǎo)航工具條的構(gòu)造和功能在號為00300832.3、以Canal+Technologies Societe Anonyme名義的歐洲專利申請中進(jìn)行了更詳細(xì)的討論。
應(yīng)當(dāng)理解在上面已經(jīng)僅僅通過示例對本發(fā)明進(jìn)行了描述,能夠在本發(fā)明的范圍內(nèi)對細(xì)節(jié)做出修改。
在該說明書以及(合適處的)權(quán)利要求和附圖中,公開的每個(gè)特征可獨(dú)立地提供或者以任何適當(dāng)組合的形式提供。
在該權(quán)利要求中出現(xiàn)的參考數(shù)字僅僅用于說明,而且應(yīng)當(dāng)不具有在該權(quán)利要求范圍上的限制作用。
權(quán)利要求
1.一種用于在一個(gè)屏幕上顯示一個(gè)窗口的方法,其中該窗口具有一個(gè)通過它看得見置于下面的對象的背景,該方法由一個(gè)接收器/解碼器執(zhí)行,該接收器/解碼器最好是與一臺電視機(jī)一起使用。
2.如權(quán)利要求1所述的方法,進(jìn)一步包含繪制該窗口的一個(gè)框架。
3.如權(quán)利要求1或2所述的方法,其特征在于該窗口形成了包含一個(gè)窗口顯示的一個(gè)屏幕的一部分,而且該方法進(jìn)一步包含將該窗口顯示與一幅視頻圖象相結(jié)合。
4.如先前權(quán)利要求中任何一個(gè)所述的方法,進(jìn)一步包含在一個(gè)電視屏幕上顯示該窗口。
5.如先前權(quán)利要求中任何一個(gè)所述的方法,進(jìn)一步包含以下步驟定義該窗口的大??;在該窗口中繪制前景對象;以及布置該窗口的背景。
6.一種顯示一個(gè)窗口的方法,由一個(gè)接收器/解碼器執(zhí)行,并且包含以下步驟定義該窗口的大??;在該窗口中繪制前景對象;以及布置該窗口背景以便使置于該背景下面的對象可見。
7.如權(quán)利要求5或6所述的方法,其特征在于用于繪制前景對象的步驟包含將前景像素設(shè)置為期望值。
8.如權(quán)利要求5到7中任何一個(gè)所述的方法,其特征在于該前景對象包含直線、曲線、方框、圓周、三角形和印刷字符中的任何一個(gè)或是全部,而且最好是適于以至少兩個(gè)繪制操作被繪制出來。
9.如權(quán)利要求5到8中任何一個(gè)所述的方法,其特征在于前景對象包含交互式的控制。
10.如權(quán)利要求5到9中任何一個(gè)所述的方法,其特征在于布置該背景的步驟包含在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值保持不變。
11.如權(quán)利要求5到10中任何一個(gè)所述的方法,其特征在于布置背景的步驟包含在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值與一幅置于下面圖象的一個(gè)像素值相混合。
12.如權(quán)利要求5到11中任何一個(gè)所述的方法,其特征在于布置背景的步驟包含使至少一個(gè)前景像素保持不變。
13.如權(quán)利要求5到12中任何一個(gè)所述的方法,其特征在于置于該背景下面的至少一個(gè)對象包含一個(gè)網(wǎng)頁的一個(gè)元素。
14.如權(quán)利要求5到13中任何一個(gè)所述的方法,進(jìn)一步包含顯示一個(gè)進(jìn)一步具有這樣一個(gè)背景的窗口,通過該背景看得見置于下面的對象。
15.如權(quán)利要求14所述的方法,其特征在于第一個(gè)窗口的至少一部分置于該進(jìn)一步窗口的下面。
16.如先前權(quán)利要求中任何一個(gè)所述的方法,進(jìn)一步包含監(jiān)視在一個(gè)進(jìn)一步窗口中的繪制,以便使在影響所述窗口的該進(jìn)一步窗口中的繪制能夠被校正。
17.一種在一個(gè)窗口中進(jìn)行繪制的方法,該方法包含在該窗口中進(jìn)行繪制,以及監(jiān)視該繪制以便使影響一個(gè)重疊窗口的繪制能夠被校正,該方法由一個(gè)接收器/解碼器執(zhí)行。
18.如權(quán)利要求16或17所述的方法,進(jìn)一步包含確定一個(gè)可能受到該繪制影響的窗口,以及發(fā)送一個(gè)信號以指示可能受到影響的該窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分。
19.如權(quán)利要求18所述的方法,其特征在于該信號可能是一個(gè)Java事件。
20.如權(quán)利要求18或19所述的方法,其特征在于該信號繼每個(gè)繪制操作之后被發(fā)送。
21.如權(quán)利要求20所述的方法,進(jìn)一步包含取消用于至少一個(gè)繪制操作的信號。
22.一種在一個(gè)窗口中進(jìn)行繪制的方法,該方法包含提供第一模式和第二模式,其中在第一模式中,繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分,在第二模式中取消了一個(gè)信號的發(fā)送。
23.如權(quán)利要求18到22中任何一個(gè)所述的方法,其特征在于該信號發(fā)自一個(gè)窗口管理器。
24.如權(quán)利要求18到22中任何一個(gè)所述的方法,其特征在于該信號發(fā)自一個(gè)窗口的一個(gè)客戶,最好是由執(zhí)行該繪制的那個(gè)客戶發(fā)送,而且最好是發(fā)送給一個(gè)窗口管理器。
25.如權(quán)利要求23或24所述的方法,進(jìn)一步包含使窗口管理器可得到與該窗口的透明度有關(guān)的信息。
26.如權(quán)利要求25所述的方法,進(jìn)一步包含存儲該信息作為該窗口的一個(gè)屬性。
27.如權(quán)利要求25或26所述的方法,進(jìn)一步包含最好是在一條消息中或是經(jīng)由一個(gè)函數(shù)調(diào)用,將該信息發(fā)送到窗口管理器。
28.如權(quán)利要求25到27中任何一個(gè)所述的方法,其特征在于取決于該信息,一個(gè)信號的發(fā)送被取消。
29.如權(quán)利要求18到26中任何一個(gè)所述的方法,其特征在于取決于這些窗口的關(guān)系,一個(gè)信號的發(fā)送被取消。
30.如權(quán)利要求18到29中任何一個(gè)所述的方法,進(jìn)一步包含繼若干數(shù)目的繪制操作之后發(fā)送一個(gè)信號,該數(shù)目最好是在至少一個(gè)繪制操作前被確定下來,而且最好是大于1、3、5、10、30、50或100。
31.如權(quán)利要求16到30中任何一個(gè)所述的方法,進(jìn)一步包含重新繪制可能受到影響的那個(gè)窗口的至少一部分。
32.一種在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的方法,其中監(jiān)視在一個(gè)窗口中的繪制,而且發(fā)送一個(gè)信號到可能受到該繪制影響的至少一個(gè)其它窗口,該方法進(jìn)一步包含選擇一種模式,其中在該模式中,用于至少一個(gè)繪制操作的到至少一個(gè)其它窗口的一個(gè)信號被取消了。
33.如權(quán)利要求32所述的方法,進(jìn)一步包含選擇一種模式,在該模式中,繼所述至少一個(gè)繪制操作之后,發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口。
34.如權(quán)利要求32或33所述的方法,其特征在于該信號是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
35.一種顯示一個(gè)窗口的方法,包含提供一個(gè)管理該窗口顯示的窗口管理器,以及將與該窗口透明度有關(guān)的信息傳送到該窗口管理器。
36.如權(quán)利要求35所述的方法,其特征在于該窗口管理器形成一個(gè)虛擬機(jī)的一部分。
37.一種最好是為一個(gè)網(wǎng)絡(luò)瀏覽器,顯示一個(gè)導(dǎo)航顯示屏的方法,其特征在于導(dǎo)航顯示屏包含至少一個(gè)具有一個(gè)透明背景的窗口。
38.如權(quán)利要求37所述的方法,其特征在于該方法由一個(gè)接收器/解碼器執(zhí)行,該接收器/解碼器最好是用于與一臺電視機(jī)一起使用。
39.一種在一個(gè)屏幕上顯示窗口的方法,該方法由一個(gè)接收器/解碼器執(zhí)行,并且包含以下步驟顯示第一和第二窗口,其中至少第一個(gè)窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象;確定第一個(gè)窗口是否與第二個(gè)窗口重疊;在第二個(gè)窗口中進(jìn)行繪制;以及如果第一個(gè)窗口與第二個(gè)窗口重疊,則重新繪制第一個(gè)窗口的至少一部分。
40.一個(gè)接收器/解碼器,包含用于在一個(gè)屏幕上顯示一個(gè)窗口的裝置(通常以一個(gè)處理器的形式),其中該窗口具有一個(gè)通過它看得見置于下面的對象的背景,該接收器/解碼器最好是與一臺電視機(jī)一起使用。
41.如權(quán)利要求40所述的接收器/解碼器,進(jìn)一步包含用于繪制該窗口的一個(gè)框架的裝置(通常以一個(gè)處理器的形式)。
42.如權(quán)利要求40或41所述的接收器/解碼器,其特征在于該顯示裝置適于顯示一個(gè)形成包含了一個(gè)窗口顯示的一個(gè)屏幕的一部分的窗口,其中該屏幕并且進(jìn)一步包含用于將該窗口顯示與一幅視頻圖像相結(jié)合的裝置。
43.如權(quán)利要求40到42中任何一個(gè)所述的接收器/解碼器,其特征在于該顯示裝置適于在一個(gè)電視屏幕上顯示該窗口。
44.如權(quán)利要求40到43中任何一個(gè)所述的接收器/解碼器,進(jìn)一步包含用于定義該窗口尺寸的裝置(通常以一個(gè)處理器的形式);用于在該窗口中繪制前景對象的裝置(通常以一個(gè)處理器的形式);以及用于布置該窗口背景的裝置(通常以一個(gè)處理器的形式)。
45.一個(gè)接收器/解碼器,包含用于顯示一個(gè)窗口的裝置(通常以一個(gè)處理器的形式);用于定義該窗口尺寸的裝置(通常以一個(gè)處理器的形式);用于在該窗口中繪制前景對象的裝置(通常以一個(gè)處理器的形式);以及用于布置該窗口背景以使置于該背景下面的對象可見的裝置(通常以一個(gè)處理器的形式)。
46.如權(quán)利要求44或45所述的接收器/解碼器,其特征在于用于繪制前景對象的裝置適于將前景像素設(shè)置為期望值。
47.如權(quán)利要求44到46中任何一個(gè)所述的接收器/解碼器,其特征在于該前景對象包含直線、曲線、方框、圓周、三角形和印刷字符中的任何一個(gè)或是全部,而且最好是適于以至少兩個(gè)繪制操作被繪制出來。
48.如權(quán)利要求44到47中任何一個(gè)所述的接收器/解碼器,其特征在于前景對象包含交互式的控制。
49.如權(quán)利要求44到48中任何一個(gè)所述的接收器/解碼器,其特征在于布置裝置適于在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值保持不變。
50.如權(quán)利要求44到49中任何一個(gè)所述的接收器/解碼器,其特征在于布置裝置適于在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值與一幅置于下面的圖象的一個(gè)像素值相混合。
51.如權(quán)利要求44到50中任何一個(gè)所述的接收器/解碼器,其特征在于該布置裝置適于使至少一個(gè)前景像素保持不變。
52.如權(quán)利要求44到51中任何一個(gè)所述的接收器/解碼器,其特征在于置于該背景下面的至少一個(gè)對象包含一個(gè)網(wǎng)頁的一個(gè)元素。
53.如權(quán)利要求44到52中任何一個(gè)所述的接收器/解碼器,進(jìn)一步包含用于顯示具有這樣一個(gè)背景的一個(gè)進(jìn)一步窗口的裝置(通常以一個(gè)處理器的形式),通過該背景看得見置于下面的對象。
54.如權(quán)利要求53所述的接收器/解碼器,其特征在于第一個(gè)窗口的至少一部分置于該進(jìn)一步窗口的下面。
55.如在前權(quán)利要求中任何一個(gè)所述的接收器/解碼器,進(jìn)一步包含裝置(一般以一個(gè)處理器的形式),用于監(jiān)視在一個(gè)進(jìn)一步窗口中進(jìn)行的繪制,以便使影響所述窗口的該進(jìn)一步窗口中的繪制能夠被校正。
56.一個(gè)接收器/解碼器,包含用于在一個(gè)窗口中進(jìn)行繪制的裝置;以及用于監(jiān)視該繪制以便使影響一個(gè)重疊窗口的繪制能夠被校正的裝置。
57.如權(quán)利要求55或56所述的接收器/解碼器,進(jìn)一步包含裝置用于確定一個(gè)可能受到該繪制影響的窗口,以及發(fā)送一個(gè)信號以指示可能受到影響的該窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分。
58.如權(quán)利要求57所述的接收器/解碼器,其特征在于該信號是一個(gè)Java事件。
59.如權(quán)利要求57或58所述的接收器/解碼器,其特征在于該信號繼每個(gè)繪制操作之后被發(fā)送。
60.如權(quán)利要求59所述的接收器/解碼器,進(jìn)一步包含用于取消用于至少一個(gè)繪制操作的信號的裝置。
61.一個(gè)接收器/解碼器,包含用于在第一和第二模式中,在一個(gè)窗口中進(jìn)行繪制的裝置,其特征在于在第一模式中,繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分,而在第二模式中取消一個(gè)信號的發(fā)送。
62.如權(quán)利要求57到61中任何一個(gè)所述的接收器/解碼器,其特征在于該信號發(fā)自一個(gè)窗口管理器。
63.如權(quán)利要求57到61中任何一個(gè)所述的接收器/解碼器,其特征在于該信號發(fā)自一個(gè)窗口的一個(gè)客戶,而且最好是由執(zhí)行繪制的那個(gè)客戶發(fā)送,以及最好是發(fā)送給一個(gè)窗口管理器。
64.如權(quán)利要求62或63所述的接收器/解碼器,進(jìn)一步包含裝置用于使窗口管理器可以得到與該窗口透明度有關(guān)的信息。
65.如權(quán)利要求64所述的接收器/解碼器,進(jìn)一步包含用于存儲該信息作為該窗口的一個(gè)屬性的裝置。
66.如權(quán)利要求64或65所述的接收器/解碼器,進(jìn)一步包含裝置用于,最好是在一條消息中或是經(jīng)由一個(gè)函數(shù)調(diào)用,將該信息發(fā)送到窗口管理器。
67.如權(quán)利要求64到66中任何一個(gè)所述的接收器/解碼器,其特征在于取決于該信息,一個(gè)信號的發(fā)送被取消。
68.如權(quán)利要求57到66中任何一個(gè)所述的接收器/解碼器,其特征在于取決于這些窗口的關(guān)系,一個(gè)信號的發(fā)送被取消。
69.如權(quán)利要求57到68中任何一個(gè)所述的接收器/解碼器,進(jìn)一步包含裝置,用于繼若干數(shù)目的繪制操作之后發(fā)送一個(gè)信號,其中該數(shù)目最好是在至少一個(gè)繪制操作前被確定下來,而且最好是大于1、3、5、10、30、50或100。
70.如權(quán)利要求55到69中任何一個(gè)所述的接收器/解碼器,進(jìn)一步包含用于重新繪制可能受到影響的那個(gè)窗口的至少一部分的裝置。
71.用于在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的裝置,包含用于在一個(gè)窗口中進(jìn)行繪制的裝置(通常以一個(gè)處理器的形式);用于監(jiān)視在該窗口中的繪制并且向可能受到該繪制影響的至少一個(gè)其它窗口發(fā)送一個(gè)信號的裝置(通常以一個(gè)處理器的形式);以及用于選擇一種模式的裝置(通常以一個(gè)處理器的形式),在該模式中,用于至少一個(gè)繪制操作的、到至少一個(gè)其它窗口的一個(gè)信號被取消了。
72.如權(quán)利要求71所述的裝置,進(jìn)一步包含裝置,用于選擇一種模式,在該模式中,繼所述至少一個(gè)繪制操作之后,發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口。
73.如權(quán)利要求71或72所述的裝置,其特征在于該信號是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
74.用于顯示一個(gè)窗口的裝置,包含用于顯示該窗口的裝置(通常以一個(gè)處理器的形式);一個(gè)窗口管理器,用于管理該窗口的顯示;以及用于傳送與該窗口透明度有關(guān)的信息到該窗口管理器的裝置(通常以一個(gè)處理器的形式)。
75.如權(quán)利要求74所述的裝置,其特征在于該窗口管理器形成一個(gè)虛擬機(jī)的一部分。
76.用于顯示一個(gè)導(dǎo)航顯示屏的裝置,包含裝置(通常以一個(gè)處理器的形式),用于以這樣一種方式顯示該導(dǎo)航顯示屏,以便使該導(dǎo)航顯示屏包含至少一個(gè)具有透明背景的窗口。
77.一個(gè)接收器/解碼器,包含如權(quán)利要求76所述的裝置。
78.一個(gè)電視系統(tǒng),包含一個(gè)如權(quán)利要求77所述的接收器/解碼器,以及一臺可以連接到該接收器/解碼器的電視機(jī)。
79.一個(gè)電視系統(tǒng),包含一個(gè)如權(quán)利要求77所述的接收器/解碼器,以及一臺連接到該接收器/解碼器的電視機(jī)。
80.一種用于在一個(gè)屏幕上顯示窗口的接收器/解碼器,包含用于顯示第一和第二個(gè)窗口的裝置(通常以一個(gè)處理器的形式),其中至少第一個(gè)窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象;用于確定第一個(gè)窗口是否與第二個(gè)窗口重疊的裝置(通常以一個(gè)處理器的形式);用于在第二個(gè)窗口中進(jìn)行繪制的裝置(通常以一個(gè)處理器的形式);以及用于如果第一個(gè)窗口與第二個(gè)窗口重疊則重新繪制第一個(gè)窗口的至少一部分的裝置(通常以一個(gè)處理器的形式)。
81.一種用于和一個(gè)接收器/解碼器一起使用的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品(在程序的控制下)包含用于在一個(gè)屏幕上顯示一個(gè)窗口的代碼,其特征在于該窗口具有一個(gè)通過它看得見置于下面的對象的背景,該接收器/解碼器最好是和一臺電視機(jī)一起使用。
82.如權(quán)利要求81所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含用于繪制該窗口的一個(gè)框架的代碼。
83.如權(quán)利要求81或82所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該顯示代碼適于顯示一個(gè)形成了包含了一個(gè)屏幕的一部分的窗口,該屏幕包括一個(gè)窗口顯示,并且進(jìn)一步包含用于將該窗口顯示與一幅視頻圖像相結(jié)合的代碼。
84.如權(quán)利要求81到83中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該顯示代碼適于在一個(gè)電視屏幕上顯示該窗口。
85.如權(quán)利要求81到84中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含用于定義該窗口尺寸的代碼;用于在該窗口中繪制前景對象的代碼;以及用于布置該窗口背景的代碼。
86.一種計(jì)算機(jī)程序產(chǎn)品,包含用于顯示一個(gè)窗口的代碼;用于定義該窗口尺寸的代碼;用于在該窗口中繪制前景對象的代碼;以及用于布置該窗口背景以便使置于該背景下面的對象可見的代碼。
87.如權(quán)利要求85或86所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于用于繪制前景對象的代碼適于將前景像素設(shè)置為期望值。
88.如權(quán)利要求84到87中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該前景對象包含直線、曲線、方框、圓周、三角形和印刷字符中的任何一個(gè)或是全部,而且最好是適于以至少兩個(gè)繪制操作被繪制出來。
89.如權(quán)利要求84到88中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于前景對象包含交互式的控制。
90.如權(quán)利要求84到89中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該布置代碼適于在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值保持不變。
91.如權(quán)利要求84到90中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該布置代碼適于在定義了背景的一個(gè)區(qū)域內(nèi),使至少一個(gè)像素值與一幅置于下面的圖象的一個(gè)像素值相混合。
92.如權(quán)利要求84到91中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于布置代碼適于使至少一個(gè)前景像素保持不變。
93.如權(quán)利要求84到92中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于置于該背景下面的至少一個(gè)對象包含一個(gè)網(wǎng)頁的一個(gè)元素。
94.如權(quán)利要求84到93中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含代碼,用于顯示具有這樣一個(gè)背景的一個(gè)進(jìn)一步窗口,通過該背景看得見置于下面的對象。
95.如權(quán)利要求94所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于第一個(gè)窗口的至少一部分置于該進(jìn)一步窗口的下面。
96.如先前權(quán)利要求中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含代碼,用于監(jiān)視在一個(gè)進(jìn)一步窗口中的繪制,以便使影響所述窗口的該進(jìn)一步窗口中的繪制能夠被校正。
97.一種計(jì)算機(jī)程序產(chǎn)品,包含用于在一個(gè)窗口中進(jìn)行繪制的代碼;以及用于監(jiān)視該繪制以便使影響一個(gè)重疊窗口的繪制能夠被校正的代碼。
98.如權(quán)利要求96或97所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含代碼,用于確定一個(gè)可能受到該繪制影響的窗口,以及發(fā)送一個(gè)信號用以指示可能受到影響的該窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分。
99.如權(quán)利要求98所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該信號是一個(gè)Java事件。
100.如權(quán)利要求98或99所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該信號繼每個(gè)繪制操作之后被發(fā)送。
101.如權(quán)利要求100所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含用于為至少一個(gè)繪制操作取消該信號的代碼。
102.一種計(jì)算機(jī)程序產(chǎn)品,它包含用于以第一和第二模式,在一個(gè)窗口中進(jìn)行繪制的代碼,其特征在于在第一模式中,繼每個(gè)繪制操作之后發(fā)送一個(gè)信號,用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分,而在第二模式中取消一個(gè)信號的發(fā)送。
103.如權(quán)利要求98到102中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該信號發(fā)自一個(gè)窗口管理器。
104.如權(quán)利要求98到102中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于該信號發(fā)自一個(gè)窗口的一個(gè)客戶,而且最好是由執(zhí)行繪制的那個(gè)客戶發(fā)送,以及最好是發(fā)送給一個(gè)窗口管理器。
105.如權(quán)利要求103或104所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含代碼,用于使窗口管理器可以得到與該窗口透明度有關(guān)的信息。
106.如權(quán)利要求105所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含用于存儲該信息作為那個(gè)窗口的一個(gè)屬性的代碼。
107.如權(quán)利要求105或106所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含代碼用于,最好是在一條消息中或是經(jīng)由一個(gè)函數(shù)調(diào)用,將該信息發(fā)送到窗口管理器。
108.如權(quán)利要求105到107中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于取決于該信息,一個(gè)信號的發(fā)送被取消。
109.如權(quán)利要求98到107中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于取決于這些窗口的關(guān)系,一個(gè)信號的發(fā)送被取消。
110.如權(quán)利要求98到109中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含代碼,用于繼若干數(shù)目的繪制操作之后發(fā)送一個(gè)信號,其中該數(shù)目最好是在至少一個(gè)繪制操作前被確定下來,而且最好是大于1、3、5、10、30、50或100。
111.如權(quán)利要求96到110中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包含用于重新繪制可能受到影響的那個(gè)窗口的至少一部分的代碼。
112.用于在一個(gè)窗口系統(tǒng)中進(jìn)行繪制的裝置,包含用于在一個(gè)窗口中進(jìn)行繪制的代碼;用于監(jiān)視在該窗口中的繪制,并且向可能受到該繪制影響的至少一個(gè)其它窗口發(fā)送一個(gè)信號的代碼;以及用于選擇一種模式的代碼,其中在該模式中,用于至少一個(gè)繪制操作的、到至少一個(gè)其它窗口的一個(gè)信號被取消了。
113.如權(quán)利要求112所述的裝置,進(jìn)一步包含代碼,用于選擇一種模式,在該模式中,繼所述至少一個(gè)繪制操作之后,發(fā)送一個(gè)信號到所述至少一個(gè)其它窗口。
114.如權(quán)利要求112或113所述的裝置,其特征在于該信號是一個(gè)用以指示可能受到該繪制影響的一個(gè)窗口的一個(gè)客戶重新繪制那個(gè)窗口的至少一部分的信號。
115.用于顯示一個(gè)窗口的裝置,包含用于顯示該窗口的代碼;一個(gè)窗口管理器,用于管理該窗口的顯示;以及用于傳送與該窗口透明度有關(guān)的信息到窗口管理器的代碼。
116.如權(quán)利要求115所述的裝置,其特征在于該窗口管理器形成一個(gè)虛擬機(jī)的一部分。
117.用于顯示一個(gè)導(dǎo)航顯示屏的裝置,包含代碼,用于以這樣一種方式顯示該導(dǎo)航顯示屏,以便使該導(dǎo)航顯示屏包含至少一個(gè)具有透明背景的窗口。
118.一種用于在一個(gè)屏幕上顯示窗口的計(jì)算機(jī)程序產(chǎn)品,包含用于顯示第一和第二個(gè)窗口的代碼,其中至少第一個(gè)窗口具有這樣一個(gè)背景,通過該背景看得見置于下面的對象;用于確定第一個(gè)窗口是否與第二個(gè)窗口相重疊的代碼;用于在第二個(gè)窗口中進(jìn)行繪制的代碼;以及用于如果第一個(gè)窗口與第二個(gè)窗口重疊,則重新繪制第一個(gè)窗口的至少一部分的代碼。
119.一種計(jì)算機(jī)程序產(chǎn)品,包含一個(gè)存儲器和處理器,其中在該存儲器中存儲有一個(gè)應(yīng)用程序,該處理器(在該應(yīng)用程序的控制下)適于執(zhí)行如權(quán)利要求1到39中任何一個(gè)所述的方法。
120.一種計(jì)算機(jī)程序產(chǎn)品,包含一段用于執(zhí)行如權(quán)利要求1到39中任何一個(gè)所述的方法的程序。
121.一種計(jì)算機(jī)可讀介質(zhì),其上存儲有一個(gè)用于執(zhí)行如權(quán)利要求1到39中任何一個(gè)所述的方法的程序。
122.一種計(jì)算機(jī)可讀介質(zhì),其上存儲有一個(gè)如權(quán)利要求80到120中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品。
123.一個(gè)信號,有形地體現(xiàn)為一個(gè)如權(quán)利要求80到120中任何一個(gè)所述的計(jì)算機(jī)程序產(chǎn)品。
124.一種實(shí)質(zhì)上結(jié)合附圖進(jìn)行描述、并在附圖中進(jìn)行說明的方法。
125.一種實(shí)質(zhì)上結(jié)合附圖進(jìn)行描述、并在附圖中進(jìn)行說明的裝置。
全文摘要
描述了一種在一個(gè)屏幕上顯示一個(gè)窗口的方法,其中該窗口具有一個(gè)通過它看得見置于下面的對象的背景。此外還描述了當(dāng)在一個(gè)窗口中進(jìn)行繪制時(shí),管理位于這樣一個(gè)窗口下面的窗口的方法。
文檔編號G09G5/377GK1391669SQ00816055
公開日2003年1月15日 申請日期2000年9月26日 優(yōu)先權(quán)日1999年9月27日
發(fā)明者A·呂勒 申請人:卡納爾股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
扬中市| 万州区| 抚宁县| 汉寿县| 眉山市| 呼玛县| 酉阳| 凤山县| 潮安县| 塔河县| 安康市| 孟州市| 水富县| 周宁县| 中西区| 隆尧县| 湟中县| 吉安市| 凤庆县| 山东| 广昌县| 美姑县| 思南县| 科技| 高州市| 仪陇县| 平顶山市| 康乐县| 东乌珠穆沁旗| 青海省| 安徽省| 罗平县| 呼和浩特市| 白城市| 九龙坡区| 鄂温| 自贡市| 马公市| 巴彦淖尔市| 甘肃省| 永顺县|