2012-03-20 68 views
1

我正在開發一個插件來進行eclipse,並且我想將一些操作添加到上下文菜單中。但實際上,我希望根據編輯器中的文本選擇在前面準備結果,並在菜單項被選中時顯示它們。 我跟着那篇文章http://www.eclipse.org/articles/Article-WorkbenchSelections/article.html - 所有接口(ISelectionListener,ISelectionChangedListener等)允許處理SelectionChanged事件,但編輯器計數只在選擇的長度也改變時才改變 - 所以編輯器中的簡單點擊不會觸發事件,儘管我想要得到的單詞(例如)作爲選擇,如果光標現在在單詞裏面,長度爲0.在Eclipse TextEditor中更改光標位置時得到通知

所以問題是 - 什麼是最簡單的方法來拖放光標位置/偏移/選擇零長度價值在變化?

回答

1

在這種情況下,您也必須使用KeyListener和MouseListener。例如,看看org.eclipse.jface.text.PaintManager,它會監聽所有這些事件。

+0

感謝您的回覆。 找不到我可以將我自己的Key和Mouse偵聽器添加到編輯器的位置。它似乎擴展,然後更換默認編輯器是最簡單的方法。 – Ritro 2012-03-21 19:20:50

0

如果要擴展TextEditor可以覆蓋handleCursorPositionChanged()方法,用來觸發事件並使用getCursorPosition()得到光標位置爲String

+0

確實提到了什麼原因以及爲什麼你建議這個答案,並閱讀常見問題知道,如何以適當的方式給出答案。 – Hamad 2013-11-22 06:10:52