國際語言環境指南

XmText 動作常式

下列清單說明 XmText 動作常式。

left-character(extend)

如果 XmNeditPolicyXmEDIT_LOGICAL,且呼叫它時沒有使用引數,則插入游標會邏輯式地往後移動一個字元。如果插入游標是在行頭,插入游標就會移到前一行的最後一個字元 (如果有的話)。否則,插入游標位置就不會變更。

如果 XmNeditPolicyXmEDIT_VISUAL,那麼游標就會移到游標位置的左側。如果插入游標是在行頭,那它會移到前一行的最後一個字元 (如果有的話)。

如果使用了 extend 引數來呼叫 left-character(),則插入游標會移動,延伸目前的選取範圍,就像沒有使用引數時一樣。

left-character() 動作以合理的 XmCR_MOVING_INSERT_CURSOR 值產生對 XmNmotionVerifyCallback 程序的呼叫。如果使用 extend 引數來呼叫的話,這個動作就會產生對 XmNgainPrimaryCallback 程序的呼叫。如需詳細資訊,請參閱「Motif Programmer's Reference」中的回呼說明。

right-character(extend)

如果 XmNeditPolicyXmEDIT_LOGICAL,且呼叫它時沒有使用任何引數,則插入游標會邏輯式地往前移動一個字元。如果插入游標是在行尾,此動作會將插入游標移到下一行的開頭 (如果有的話)。

如果 XmNeditPolicyXmEDIT_VISUAL,那麼游標就會移到游標位置的右側。如果插入游標是在行尾,那插入游標會移到下一行的開頭 (如果有的話)。

如果使用 extend 引數來呼叫,XmNeditPolicy 會移動插入游標,延伸目前的選取範圍,就像沒有使用引數時一樣。

right-character() 動作以合理的 XmCR_MOVING_INSERT_CURSOR 值產生對 XmNmotionVerifyCallback 程序的呼叫。如果使用 extend 引數來呼叫的話,這個動作就會產生對 XmNgainPrimaryCallback 程序的呼叫。如需詳細資訊,請參閱「Motif Programmer's Reference」中的回呼說明。

right-word(extend)

如果 XmNeditPolicyXmEDIT_LOGICAL,且呼叫它時沒有使用任何引數,則插入游標會移到接續文字的起始字元 (如果有的話)。否則,游標會移到目前文字的結尾。如果插入游標位於行尾或是一行的最後一個字,游標就會移到下一行的第一個字 (如果有的話)。否則,游標會移到目前文字的結尾。

如果 XmNeditPolicyXmEDIT_VISUAL,且未使用引數呼叫,插入游標會移到行尾右側或之後第一個空白字元之後的非空白字元。

如果使用 extend 引數來呼叫,引數會移動插入游標,延伸目前的選取範圍,就像沒有使用引數時一樣。

left-word() 動作以合理的 XmCR_MOVING_INSERT_CURSOR 值產生對 XmNmotionVerifyCallback 程序的呼叫。如果使用 extend 引數來呼叫的話,這個動作就會產生對 XmNgainPrimaryCallback 程序的呼叫。如需詳細資訊,請參閱「Motif Programmer's Reference」中的回呼說明。

delete-left-character()

如果 XmNeditPolicyXmEDIT_LOGICAL,它就相當於 delete-previous-char()。如果 XmNeditPolicyXmEDIT_VISUAL,那麼在一般模式中,如果選取範圍是非 null,便會刪除此選取範圍。否則,此動作會刪除插入游標左邊的字元。在增加模式中,如果選取範圍是非 null,而游標和選取範圍並未切斷連接,且 XmNpendingDelete 已設為 True,則此動作會刪除選取範圍。否則,此動作會刪除插入游標左邊,對選取範圍產生影響的字元。

delete-left-character() 動作以合理的 XmCR_MODIFYING_TEXT_VALUE 值產生對 XmNmodifyVerifyCallback 程序的呼叫,並以合理的 XmCR_VALUE_CHANGED 值產生對 XmNvalueChangedCallback 程序的呼叫。

delete-right-character()

如果 XmNeditPolicyXmEDIT_VISUAL,它就相當於 delete-next-character()。如果 XmNeditPolicyXmEDIT_VISUAL,那麼在一般模式中,如果選取範圍是非 null,它就會刪除選取範圍。否則,它會刪除插入游標右邊的字元。在增加模式中,如果出現非 null 的選取範圍,且游標和選取範圍並未切斷連接,則 XmNpendingDelete 會設為 True,選取範圍也會被刪除。否則,它會刪除插入游標右邊的字元。這個動作會對選取範圍產生影響。

delete-right-character() 動作以合理的 XmCR_MODIFYING_TEXT_VALUE 值產生對 XmNmodifyVerify-Callback 程序的呼叫,並以合理的 XmCR_VALUE_CHANGED 值產生對 XmNvalue-ChangedCallback 程序的呼叫。

某些以顯示格為基礎的常式是為支援字元的複合、連音和分音片段而執行。換句話說,兩個或兩個以上的字元可以用佔用了一個顯示格的單一文字影像來代表。

下列清單說明 XmText 顯示格動作常式。

backward-cell(extend)

將插入游標往回移一個顯示格。如果 XmNeditPolicy XmEDIT_LOGICAL,則插入游標就會移到目前顯示格的前一個顯示格開頭 (如果有的話)。否則,游標會移到目前顯示格的開頭。

如果 XmNeditPolicyXmEDIT_VISUAL,那麼游標就會移到左側顯示格的開頭 (如果有的話)。prev-cell() 動作以合理的 XmCR_MOVING_INSERT_CURSOR 值產生對 XmNmotionVerifyCallback 程序的呼叫。如果使用 extend 引數來呼叫的話,這個動作就會產生對 XmNgainPrimaryCallback 程序的呼叫。如需詳細資訊,請參閱「Motif Programmer's Reference」中的回呼說明。

forward-cell(extend)

將插入游標移到下一個顯示格的開頭 (如果有的話)。否則,此動作會將游標移到顯示格結尾。如果 XmNeditPolicyXmEDIT_LOGICAL,那麼游標會往前移一個顯示格。

如果 XmNeditPolicyXmEDIT_VISUAL,則游標會移到游標位置右邊顯示格的開頭 (如果有的話);否則,它會移到目前顯示格結尾。forward-cell() 動作以合理的 XmCR_MOVING_INSERT_CURSOR 值產生對 XmNmotionVerifyCallback 程序的呼叫。如果使用 extend 引數來呼叫的話,這個動作就會產生對 XmNgainPrimaryCallback 程序的呼叫。如需詳細資訊,請參閱「Motif Programmer's Reference」中的回呼說明。