use of javafx.scene.control.TreeView in project uPMT by coco35700.
the class MainViewController method initialize.
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
Image image = ResourceLoader.loadImage("momentIcon.png");
this.ajoutMomentButton.setImage(image);
if (!main.getCurrentProject().getInterviews().isEmpty()) {
main.setCurrentDescription(main.getCurrentProject().getInterviews().getFirst());
}
treeViewSchema.setEditable(true);
treeViewInterview.setEditable(true);
treeViewSchema.setCellFactory((TreeView<TypeController> t) -> new TypeTreeView(main));
treeViewInterview.setCellFactory((TreeView<DescriptionInterview> t) -> new InterviewTreeView(main));
TreeItem<TypeController> Schemaroot;
TreeItem<DescriptionInterview> Interviewroot;
Schemaroot = new TreeItem<TypeController>();
Interviewroot = new TreeItem<DescriptionInterview>();
Schemaroot.getChildren().add(SchemaTransformations.SchemaToTreeView(main.getCurrentProject().getSchema()));
Interviewroot.getChildren().add(SchemaTransformations.EntretienToTreeView(main.getCurrentProject().getInterviews()));
treeViewSchema.setRoot(Schemaroot);
treeViewSchema.setShowRoot(false);
treeViewInterview.setRoot(Interviewroot);
treeViewInterview.setShowRoot(false);
main.setTreeViewSchema(treeViewSchema);
main.setTreeViewInterview(treeViewInterview);
if (main.getCurrentDescription() != null) {
// Give time to end initializing the scheme on the left
Platform.runLater(new Runnable() {
@Override
public void run() {
for (DescriptionInterview d : main.getCurrentProject().getInterviews()) {
GridPane gp = new GridPane();
gp.setMinHeight(200);
gp.setPadding(new Insets(100, 0, 0, 0));
addLinesToGrid(gp);
main.setGrid(gp);
MainViewTransformations.loadGridData(gp, main, d);
interviewsPane.put(d, gp);
}
updateGrid();
}
});
}
ajoutMomentButton.setOnDragDetected(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
// TODO Auto-generated method stub
if (main.getCurrentDescription() != null) {
Dragboard db = ajoutMomentButton.startDragAndDrop(TransferMode.ANY);
ClipboardContent content = new ClipboardContent();
content.putString("ajoutMoment");
content.putRtf("Moment Vide");
db.setContent(content);
}
}
});
if (main.getCurrentDescription() != null)
setDroppableText(main.getCurrentDescription().getDescripteme().getTexte().trim());
paneDragText = new Pane();
paneDragText.setStyle("-fx-background-color:#f4f4f4;");
paneDragText.setCursor(Cursor.MOVE);
paneDragText.setOpacity(0.2);
// Quand on selectionne du texte, on met un panel devant le text pour pouvoir le dragger
droppableText.addEventFilter(MouseEvent.MOUSE_RELEASED, new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent mouseEvent) {
if (!droppableText.getSelectedText().equals("") && !droppableText.getSelectedText().equals(" ") && !droppableText.getSelectedText().equals("\n"))
stackForDragDrop.getChildren().add(paneDragText);
}
});
// Quand on clique sur la panel qui s'est mit par dessus le texte, on l'enleve pour � nouveau rendre le texte selectionnable
paneDragText.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent arg0) {
droppableText.deselect();
stackForDragDrop.getChildren().clear();
stackForDragDrop.getChildren().add(droppableText);
}
});
// Quand on drag le panel qui s'est mit par dessus le text
paneDragText.setOnDragDetected(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
// TODO Auto-generated method stub
if (main.getCurrentDescription() != null) {
Dragboard db = ajoutMomentButton.startDragAndDrop(TransferMode.ANY);
ClipboardContent content = new ClipboardContent();
content.putString("ajoutMoment");
content.put(DataFormat.HTML, droppableText.getSelectedText());
db.setContent(content);
}
}
});
buttonTextInterview.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent arg0) {
if (droppableText.isDisabled()) {
buttonTextInterview.setImage(ResourceLoader.loadImage("closeMenuBlack.png"));
droppableText.setDisable(false);
mainSplitPane.setDividerPosition(1, splitPos);
stackForDragDrop.getChildren().add(droppableText);
topBarContainerTextInterview.setCenter(textInterviewTitle);
paneOfTextArea.setMaxWidth(paneOfTextArea.USE_COMPUTED_SIZE);
} else {
buttonTextInterview.setImage(ResourceLoader.loadImage("openMenuBlack.png"));
droppableText.deselect();
droppableText.setDisable(true);
splitPos = mainSplitPane.getDividers().get(1).getPosition();
mainSplitPane.setDividerPosition(1, 1);
stackForDragDrop.getChildren().clear();
topBarContainerTextInterview.setCenter(null);
paneOfTextArea.setMaxWidth(buttonTextInterview.getFitWidth());
}
}
});
}
use of javafx.scene.control.TreeView in project blue by kunstmusik.
the class BlueJFXControlsApplication method setTreeViewTest.
private void setTreeViewTest(TabPane root) {
TreeView<String> tv = new TreeView<>();
tv.setRoot(new TreeItem<>("TEST"));
root.getTabs().add(new Tab("TreeView", tv));
}
use of javafx.scene.control.TreeView in project Challenger4SysAdmins by fvarrui.
the class TreeEditorController method initialize.
@Override
public void initialize(URL location, ResourceBundle resources) {
treeView.setCellFactory(new Callback<TreeView<Object>, TreeCell<Object>>() {
public TreeCell<Object> call(TreeView<Object> param) {
return new CustomTreeCell();
}
});
challenge.addListener((o, ov, nv) -> {
if (nv != null)
treeView.setRoot(new ChallengeTreeItem(nv));
else
treeView.setRoot(null);
});
selectedItem.addListener((o, ov, nv) -> {
if (nv != null) {
seleccionado.set(nv.getValue());
} else {
seleccionado.set(null);
}
});
selectedItem.bind(treeView.getSelectionModel().selectedItemProperty());
addButton.disableProperty().bind(seleccionado.isNull());
deleteButton.disableProperty().bind(seleccionado.isNull());
}
use of javafx.scene.control.TreeView in project MiscellaneousStudy by mikoto2000.
the class TreeViewSample method start.
@Override
public void start(Stage stage) {
// ルート要素である TreeItem を作成
TreeItem<String> root = new TreeItem<String>("Root Node");
// ルートの子要素を作成
TreeItem<String> item1 = new TreeItem<String>("Item 1");
TreeItem<String> item2 = new TreeItem<String>("Item 2");
TreeItem<String> item3 = new TreeItem<String>("Item 3");
TreeItem<String> item4 = new TreeItem<String>("Item 4");
// item4 の子要素
TreeItem<String> item41 = new TreeItem<String>("Item 4-1");
TreeItem<String> item42 = new TreeItem<String>("Item 4-2");
TreeItem<String> item43 = new TreeItem<String>("Item 4-3");
// item4 に子要素を追加する
ObservableList<TreeItem<String>> image4tChildren = item4.getChildren();
image4tChildren.add(item41);
image4tChildren.add(item42);
image4tChildren.add(item43);
// ルート要素に子要素を追加する
ObservableList<TreeItem<String>> rootChildren = root.getChildren();
rootChildren.add(item1);
rootChildren.add(item2);
rootChildren.add(item3);
rootChildren.add(item4);
// 子を持つノードを開く
root.setExpanded(true);
item4.setExpanded(true);
// TreeView にルート要素を指定しながらインスタンス化
TreeView<String> treeView = new TreeView<String>(root);
// シーン作成
Scene scene = new Scene(treeView);
stage.setScene(scene);
stage.setTitle("Tree View Sample");
stage.show();
}
use of javafx.scene.control.TreeView in project PathWeaver by wpilibsuite.
the class MainController method setupTreeView.
private void setupTreeView(TreeView<String> treeView, TreeItem<String> treeRoot, MenuItem newItem) {
treeView.setRoot(treeRoot);
treeView.setContextMenu(new ContextMenu());
treeView.getContextMenu().getItems().addAll(newItem, FxUtils.menuItem("Delete", event -> delete()));
treeRoot.setExpanded(true);
// Don't show the roots "Paths" and "Autons" - cleaner appearance
treeView.setShowRoot(false);
}
Aggregations