5
5
import java .util .ResourceBundle ;
6
6
7
7
import com .devonfw .cobigen .gui .Controller ;
8
+ import com .devonfw .cobigen .gui .model .ModifyableTemplateSet ;
9
+ import com .devonfw .cobigen .gui .model .TemplateSetModel ;
8
10
import com .devonfw .cobigen .gui .services .TemplateSetCell ;
9
- import com .devonfw .cobigen .retriever .reader .to .model .TemplateSet ;
10
11
11
- import javafx .collections .FXCollections ;
12
12
import javafx .collections .ObservableList ;
13
13
import javafx .collections .transformation .FilteredList ;
14
14
import javafx .event .EventHandler ;
25
25
*/
26
26
public class MenuController implements Initializable {
27
27
28
- public ObservableList <TemplateSet > templateSetObservableList ;
29
-
30
28
@ FXML
31
29
private Controller controller ;
32
30
@@ -43,25 +41,16 @@ public class MenuController implements Initializable {
43
41
public Button goSearch ;
44
42
45
43
@ FXML
46
- public ListView <TemplateSet > searchResultsView ;
44
+ public ListView <ModifyableTemplateSet > searchResultsView ;
45
+
46
+ private TemplateSetModel tsModel = new TemplateSetModel ();
47
47
48
48
/**
49
49
* The constructor.
50
50
*/
51
51
public MenuController () {
52
52
53
- this .templateSetObservableList = FXCollections .observableArrayList ();
54
-
55
- // Add the template sets, populate observable list (before initialize)
56
- // this.templateSetObservableList.addAll(new TemplateSet("Template Set 1"), new TemplateSet("Template Set 2"),
57
- // new TemplateSet("Template Set 3"), new TemplateSet("Template Set 4"));
58
-
59
- // Path templateSetFile = Paths.get(testdataRoot).resolve("template-set.xml");
60
- //
61
- // TemplateSetArtifactReader artifactReader = new TemplateSetArtifactReader();
62
- //
63
- // TemplateSet templateSet = artifactReader.retrieveTemplateSet(templateSetFile);
64
- //
53
+ this .tsModel .loadallAvaliableTemplateSets ();
65
54
// List<TemplateSetTag> tagsList = new ArrayList<>();
66
55
// tagsList.addAll(templateSet.getTemplateSetConfiguration().getContextConfiguration().getTags().getTagsList());
67
56
}
@@ -80,8 +69,10 @@ public void injectController(Controller controller) {
80
69
@ Override
81
70
public void initialize (URL location , ResourceBundle resources ) {
82
71
72
+ // the line sets up the template cells in observable list
83
73
this .searchResultsView .setCellFactory (resultsView -> new TemplateSetCell ());
84
74
75
+ // home button brings back the previous state
85
76
this .homeButton .setOnAction (event -> {
86
77
try {
87
78
this .controller .loadHome (event );
@@ -90,9 +81,10 @@ public void initialize(URL location, ResourceBundle resources) {
90
81
}
91
82
});
92
83
93
- this .searchResultsView .setItems (this .templateSetObservableList );
84
+ // binds the List with model
85
+ this .searchResultsView .setItems (this .tsModel .getTemplateSetObservableList ());
94
86
95
- // Handle item selection
87
+ // Load increments of selected template set
96
88
this .searchResultsView .setOnMouseClicked (new EventHandler <MouseEvent >() {
97
89
98
90
@ Override
@@ -107,9 +99,12 @@ public void handle(MouseEvent event) {
107
99
});
108
100
109
101
// Initialize filtered List
110
- ObservableList <TemplateSet > listCopy = this .templateSetObservableList ;
111
- FilteredList <TemplateSet > filteredData = new FilteredList <>(this .templateSetObservableList , b -> true );
112
102
103
+ ObservableList <ModifyableTemplateSet > listCopy = this .tsModel .getTemplateSetObservableList ();
104
+ FilteredList <ModifyableTemplateSet > filteredData = new FilteredList <>(this .tsModel .getTemplateSetObservableList (),
105
+ b -> true );
106
+
107
+ // no idea what it does
113
108
this .searchBar .textProperty ().addListener ((observable , oldValue , newValue ) -> {
114
109
filteredData .setPredicate (templateSets -> {
115
110
// if no search value, then display all records or whatever records it currently has, no changes
0 commit comments