@Override
 public void partDeactivated(IWorkbenchPart part) {
   super.partDeactivated(part);
   if (part instanceof ComponentEditor) {
     ComponentEditor componentEditor = (ComponentEditor) part;
     TemplateEditor templateEditor = componentEditor.getTemplateEditor();
     if (templateEditor != null) {
       templateEditor.getSourceEditor().removeCursorPositionListener(this);
     }
     WodEditor wodEditor = componentEditor.getWodEditor();
     if (wodEditor != null) {
       wodEditor.removeCursorPositionListener(this);
     }
   }
 }
 public void partActivated(IWorkbenchPart part) {
   super.partActivated(part);
   if (part instanceof ComponentEditor) {
     ComponentEditor componentEditor = (ComponentEditor) part;
     TemplateEditor templateEditor = componentEditor.getTemplateEditor();
     if (templateEditor != null) {
       templateEditor.getSourceEditor().addCursorPositionListener(this);
     }
     WodEditor wodEditor = componentEditor.getWodEditor();
     if (wodEditor != null) {
       wodEditor.addCursorPositionListener(this);
     }
   } else if (part instanceof BindingsInspectorPageBookView) {
     if (_lastEditor != null && _lastSelectionRange != null) {
       cursorPositionChanged(_lastEditor, _lastSelectionRange);
     }
   }
 }