Вставьте график изюминки в субкомпозит

У меня есть ViewPart в Eclipse, в который я хочу добавить несколько композитов, по одному на график изюминки (который может быть выборочно просмотрен или скрыт пользователем), а также элементы управления, метки и поля со списком. Я работал с mxgraph, чтобы сделать это, но mxgraph не полностью совместим с eclipse ViewPart, поэтому я хочу переключиться на Zest.

Я попытался создать график изюминки и добавить его во встроенный композит как:

m_swtAwtComponent1 = new Composite(m_parentComposite, SWT.EMBEDDED);
m_swtAwtComponent1.setLayoutData(grid);
viewer = new GraphViewer(m_swtAwtComponent1, SWT.NONE);

Но это не работает.

Кроме того, мне «хотелось бы» иметь метод в zest Graph или в GraphViewer, который позволил бы мне установить конфигурацию в GridLayout и метод для изменения родительского компонента. Можно ли сделать это?


person Phil    schedule 28.01.2012    source источник
comment
Есть ли какая-то конкретная причина, по которой ваш композит называется swtAwtComponent? Zest имеет виджет SWT, поэтому перевод AWT не требуется.   -  person Zoltán Ujhelyi    schedule 09.06.2012


Ответы (2)


Родительский компонент не может быть изменен - ​​это решение SWT.

Однако, если я правильно понимаю вашу задачу, вы можете создать файл SWT SashForm и используйте его как контейнер графа Zest и соответствующего ему Composite с Combos. SashForm также имеет API для установки одного из своих поясов в качестве единственного видимого компонента (с помощью метода setMaximizedControl).

Итак, вам понадобится что-то вроде следующего (не проверяется в редакторе, показывает только основную идею:

SashForm form = new SashForm(parent, SWT.HORIZONTAL);
viewer = new GraphViewer(form, SWT.NONE);
//Note that no layout is set here!
Composite controls = new Composite(form, SWT.NONE);
//TODO load your control widgets inside this composite
form.setWeights(new int[]{2,1}); //Making the graph use more area then the widgets
person Zoltán Ujhelyi    schedule 09.06.2012

этот пост http://lowcoupling.com/post/58916245720/integrating-zest-with-xtext предоставляет подробное объяснение и код того, как создать представление Eclipse, изображающее Zest Graph. В http://lowcoupling.com/post/58705347913/defining-a-work-breakdown-structure-through-the-wbs есть пример того, как это использовалось.

person lowcoupling    schedule 22.08.2013