2011-12-25 39 views
0

在我的插件中,我創建了一個編輯器和EditorActionBarContributor,它將一些操作添加到編輯器中。我以編程方式將操作添加到編輯器的上下文菜單中。在seletionChanged()中,我根據編輯器的狀態來控制上下文菜單中應該啓用哪些動作,例如,選擇或文件的類型。Eclipse:啓用/禁用工具欄中的按鈕

現在我想將這些操作移動到eclipse工具欄。爲此,我爲擴展點org.eclipse.ui.editorActions創建了擴展,併爲編輯器中的每個操作添加了一個操作,併爲每個操作添加了一個IEditorActionDelegate,該操作從編輯器獲取對應的操作並運行它。

我想控制啓用/禁用工具欄中的按鈕,這些操作就像我在編輯器中做的那樣,但我不知道該怎麼做。例如,我希望只有在編輯器中選擇了文本時才能啓用按鈕。

我該怎麼做?

回答

1

這不是對你的問題的直接回答,但我會考慮使用Eclipse commands來代替。他們更乾淨地分開,以便您可以有一個地方,指示命令啓用/禁用,然後自動顯示在菜單/工具欄/綁定鍵等。

此外,操作已被有效棄用,因爲命令自從Eclipse 3.5以來一直是首選機制。

+0

你是對的,我應該遷移到命令。有沒有關於如何將操作「轉換」爲命令的教程?我似乎無法找到任何。 – Sebastian 2011-12-26 18:59:08

+0

不是我所知道的,但Commands的東西要容易得多,所以如果你閱讀幫助文檔,你應該能夠很快地弄清楚它。 – 2011-12-26 19:00:26