1 package io.github.magwas.inez.ui.tree;
2
3 import org.eclipse.jface.viewers.ITreeContentProvider;
4
5 import io.github.magwas.inez.Inez;
6 import io.github.magwas.inez.element.BridiElement;
7 import jakarta.inject.Inject;
8 import jakarta.inject.Singleton;
9
10 @Singleton
11 public class ModelTreeContentProvider implements ITreeContentProvider {
12
13 @Inject
14 Inez inez;
15
16 @Override
17 public Object[] getElements(Object inputElement) {
18 System.out.println("getElements " + inputElement);
19 return inez.root().getChildren().toArray();
20 }
21
22 @Override
23 public Object[] getChildren(Object parentElement) {
24 return ((BridiElement) parentElement).getChildren().toArray();
25 }
26
27 @Override
28 public Object getParent(Object element) {
29 return ((BridiElement) element).getParent();
30 }
31
32 @Override
33 public boolean hasChildren(Object element) {
34 return !((BridiElement) element).getChildren().toList().isEmpty();
35 }
36
37 }