Flex: Как обеспечить, чтобы CutOperation помещал вырезанный текст в буфер обмена? - PullRequest
0 голосов
/ 30 сентября 2010

У меня есть класс, который наследует от EditManager и предоставляет следующие методы:

public function performCopy():void
{
  var copyOperation:CopyOperation = new CopyOperation( getSelectionState() );
  doOperation( copyOperation );
}


public function performCut():void
{
  var textToCut:TextScrap = TextScrap.createTextScrap( getSelectionState() );
  var cutOperation:CutOperation = new CutOperation( getSelectionState(), textToCut );
  doOperation( cutOperation );
}

PerformCopy отлично работает и помещает скопированный текст в буфер обмена.

PerformCut удаляет текст, как и ожидалось, ноне помещает его в буфер обмена.

В документации CutOperation говорится: «Менеджер редактирования отвечает за копирование фрагмента текста в буфер обмена. Отмена операции вырезания не восстанавливает исходное состояние буфера обмена».

Есть идеи, что я могу делать не так?

Спасибо, Стефан

1 Ответ

0 голосов
/ 01 октября 2010

Это делает трюк или вызывает CopyOperation раньше:

public function performCut():void
{
 var textToCut:TextScrap = TextScrap.createTextScrap( getSelectionState() );
 TextClipboard.setContents( textToCut );    

 var cutOperation:CutOperation = new CutOperation( getSelectionState(), textToCut );
 doOperation( cutOperation );
}

Просто неожиданное поведение CutOperation.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...