2010-06-08 39 views
1

我必須從Eclipse 3.4.0到3.5.1(Galileo)更新eclipse插件(編輯器)。Eclipse插件綁定CTRL + SPACE不起作用

內容幫助存在問題。

我在哪裏鍵入CTRL + SPACE,什麼也沒有發生。但是,當我將CTRL + SPACE的綁定更改爲Eclipse中的另一個綁定(首選項 - >鍵)時,它起作用(CTRL + SPACE適用於我的編輯器)。

下面是監聽器:

public class CompletionVerifyKeyListener implements VerifyKeyListener{ 

    private ISourceViewer sourceViewer = null ; 
    private ITextListener textListener = null ; 
    private QuickAssistAssistant qaa = null ; 


    public CompletionVerifyKeyListener(ISourceViewer sourceViewer, ITextListener textListener, QuickAssistAssistant qaa) { 
     this.sourceViewer = sourceViewer ; 
     this.textListener = textListener ; 
     this.qaa = qaa ; 
    } 

    @Override 
    public void verifyKey(VerifyEvent arg0) { 

     System.out.println("Code: " + arg0.keyCode); 
     System.out.println("StateMask: " + arg0.stateMask); 

     if (arg0.keyCode == 32 && (arg0.stateMask != 0)){ 
      this.sourceViewer.addTextListener(this.textListener) ; 
      AutoCompletion ac = new AutoCompletion(this.sourceViewer, this.qaa) ; 
      ac.showIfAvailable() ; 
     } 
    } 

} 

當CTRL + SPACE是在Eclipse綁定的StateMask仍然是0,但是當我改變它,StateMask是262144(SWT.CTRL)。

我讀過這個:http://wiki.eclipse.org/FAQ_How_do_I_add_Content_Assist_to_my_editor%3F但我不明白所有。也許我必須添加createActions方法(但我不知道在哪裏)。

感謝您的幫助。

回答

0

可能是Ctrl + Space與另一個命令衝突。您是否在錯誤日誌視圖中看到有關衝突的任何內容?