コード例 #1
0
 @Override
 public IEnabledState getEnabledState() {
   if (enabledState == null) {
     if (conditionsChanged) {
       doServiceBasedChecking();
     }
     return clipboardEnabledChecker.getEnabledState();
   } else {
     return enabledState;
   }
 }
コード例 #2
0
  private void doServiceBasedChecking() {
    enabledState = null;
    if (serviceBasedEnabledChecking && clipboardEnabledChecker.getEnabledState().isEnabled()) {
      // only do service based checkings, if clipbaord checker allows operation
      if (executionTask != null && !executionTask.isCanceled()) {
        executionTask.cancel();
      }

      final Collection<ILinkCreation> linkCreations = linkProvider.get();
      if (!linkCreations.isEmpty()) {
        this.executionTask = CapUiToolkit.executionTaskFactory().create();
        linkCreatorService.getExecutableState(
            createResultCallback(executionTask), linkCreations, executionTask);
      }
    }
    conditionsChanged = false;
  }