1
1
package ploiu .ui ;
2
2
3
+ import javafx .beans .property .ObjectProperty ;
3
4
import javafx .event .ActionEvent ;
4
5
import javafx .fxml .FXML ;
5
6
import javafx .fxml .FXMLLoader ;
@@ -28,15 +29,17 @@ public class FileEntry extends AnchorPane {
28
29
@ Getter
29
30
private final FileApi file ;
30
31
private final AsyncEventReceiver <FileObject > fileReceiver ;
32
+ private final ObjectProperty <FileApi > editingFile ;
31
33
@ FXML
32
34
private ImageView icon ;
33
35
@ FXML
34
36
private Label fileName ;
35
37
@ FXML
36
38
private ContextMenu fileMenu ;
37
39
38
- public FileEntry (FileApi file , AsyncEventReceiver <FileObject > eventHandler ) {
40
+ public FileEntry (FileApi file , AsyncEventReceiver <FileObject > eventHandler , ObjectProperty < FileApi > editingFile ) {
39
41
super ();
42
+ this .editingFile = editingFile ;
40
43
this .file = file ;
41
44
var loader = new FXMLLoader (getClass ().getClassLoader ().getResource ("ui/components/FileEntry/FileEntry.fxml" ));
42
45
loader .setRoot (this );
@@ -54,15 +57,13 @@ public FileEntry(FileApi file, AsyncEventReceiver<FileObject> eventHandler) {
54
57
}
55
58
56
59
@ FXML
57
- @ SuppressWarnings ("unused" )
58
60
private void initialize () {
59
61
this .setOnContextMenuRequested (event -> {
60
62
fileMenu .show (this , event .getScreenX (), event .getScreenY ());
61
63
});
62
64
}
63
65
64
66
@ FXML
65
- @ SuppressWarnings ("unused" )
66
67
private void renameItemClicked (ActionEvent event ) {
67
68
EventReceiver <String > renameCallback = evt -> {
68
69
var newName = evt .get ();
@@ -77,7 +78,6 @@ private void renameItemClicked(ActionEvent event) {
77
78
}
78
79
79
80
@ FXML
80
- @ SuppressWarnings ("unused" )
81
81
private void deleteItemClicked (ActionEvent ignored ) {
82
82
EventReceiver <Boolean > dialogCallback = res -> {
83
83
if (res .get ()) {
@@ -91,7 +91,6 @@ private void deleteItemClicked(ActionEvent ignored) {
91
91
}
92
92
93
93
@ FXML
94
- @ SuppressWarnings ("unused" )
95
94
private void saveAsClicked (ActionEvent ignored ) {
96
95
var chooser = new DirectoryChooser ();
97
96
chooser .setTitle ("Save " + file .name () + "..." );
@@ -108,4 +107,9 @@ private void onDragDetected(MouseEvent e) {
108
107
board .setContent (Map .of (DataTypes .FILE , this .file ));
109
108
e .consume ();
110
109
}
110
+
111
+ @ FXML
112
+ private void infoItemClicked (ActionEvent ignored ) {
113
+ editingFile .set (file );
114
+ }
111
115
}
0 commit comments