AbstractPropertySection.refresh()被调用两次

时间:2017-05-15 18:02:58

标签: eclipse eclipse-plugin

当我在gef编辑器中选择一个连接到Properties View的编辑部件时,将调用Section页面的refresh方法两次。我调试了调用,看到它是第一次从setInput调用,第二次是从Viewer上的setSelection调用。这是正常的行为,还是我在设置部分时做了些什么?

Screenshot of the calls

1 个答案:

答案 0 :(得分:0)

作为解决方法,我决定只在两次调用refresh()的时间差超过60毫秒时才使用时间计算来调用刷新。

   if(timestamp == 0){
        timestamp = Calendar.getInstance().get(Calendar.MILLISECOND);
    }
    else{
        long newTimeStamp = Calendar.getInstance().get(Calendar.MILLISECOND);
        long diff = newTimeStamp - timestamp;

        if(diff < 60){
            timestamp = 0;
            return;
        }
        else{
            timestamp = newTimeStamp;
        }
    }