Добавление фигур с помощью контекстного меню - Eclipse GEF

Все,

Я создаю плагин eclipse без палитры, в котором я добавляю фигуры в пользовательский редактор через контекстное меню, но не нахожу способа сделать это . Может ли кто-нибудь посоветовать мне, как динамически добавлять рисунки в редактор через контекстное меню, то есть добавлять действия / команды.


Поскольку разработка плагина Eclipse GEF находит меньше примеров для просмотра, я добавляю свое решение, чтобы его нашли другие полезно. Этот код помогает отображать узел в редакторе.

Исходный код класса Action для визуализации фигур в редакторе:

public class AddNodeAction extends EditorPartAction
{
 public static final String ADD_NODE = "ADDNODE";

 public AddNodeAction(IEditorPart editor) {
  super(editor);
            setText("Add a Node");
            setId(ADD_NODE);     // Important to set ID
 }

 public void run()
 {
  <ParentModelClass> parent=  (<ParentModelClass>)getEditorPart().getAdapter(<ParentModelClass>.class);

  if (parent== null)
   return;
  CommandStack command = (CommandStack)getEditorPart().getAdapter(CommandStack.class);

  if (command != null)
  {
   CompoundCommand totalCmd = new CompoundCommand();
   <ChildModelToRenderFigureCommand>cmd = new <ChildModelToRenderFigureCommand>(parent);
   cmd.setParent(parent);
   <ChildModelClass> newNode = new <ChildModelClass>();
   cmd.setNode(newNode);
   cmd.setLocation(getLocation()); // Any location you wish to set to
   totalCmd.add(cmd);
   command.execute(totalCmd);
  }
 }

 @Override
 protected boolean calculateEnabled() 
 {
  return true;
 }
}
5
задан Oak 11 April 2012 в 13:17
поделиться