Java 类javafx.scene.control.cell.ComboBoxListCell 实例源码

项目:marathonv5    文件:RFXListViewComboBoxListCell.java   
@Test public void select() {
    @SuppressWarnings("unchecked")
    ListView<String> listView = (ListView<String>) getPrimaryStage().getScene().getRoot().lookup(".list-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        @SuppressWarnings("unchecked")
        ComboBoxListCell<String> cell = (ComboBoxListCell<String>) getCellAt(listView, 3);
        Point2D point = getPoint(listView, 3);
        RFXListView rfxListView = new RFXListView(listView, null, point, lr);
        rfxListView.focusGained(rfxListView);
        cell.startEdit();
        cell.updateItem("Option 3", false);
        cell.commitEdit("Option 3");
        rfxListView.focusLost(rfxListView);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals("Option 3", recording.getParameters()[0]);
}
项目:marathonv5    文件:RFXListViewComboBoxListCell.java   
@Test public void selectEditable() {
    @SuppressWarnings("unchecked")
    ListView<String> listView = (ListView<String>) getPrimaryStage().getScene().getRoot().lookup(".list-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        @SuppressWarnings("unchecked")
        ComboBoxListCell<String> cell = (ComboBoxListCell<String>) getCellAt(listView, 3);
        cell.setComboBoxEditable(true);
        Point2D point = getPoint(listView, 3);
        RFXListView rfxListView = new RFXListView(listView, null, point, lr);
        rfxListView.focusGained(rfxListView);
        cell.startEdit();
        cell.updateItem("Option 5", false);
        cell.commitEdit("Option 5");
        rfxListView.focusLost(rfxListView);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals("Option 5", recording.getParameters()[0]);
}
项目:openjfx-8u-dev-tests    文件:NewListViewApp.java   
private ComboBox getEditFactoryComboBoxChoser() {
    ComboBox<CellsApp.CellType> cb = new ComboBox<CellsApp.CellType>();
    cb.getItems().addAll(FXCollections.observableArrayList(CellsApp.CellType.values()));
    cb.setId(LIST_FACTORY_CHOICE_ID);
    cb.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<CellsApp.CellType>() {
        public void changed(ObservableValue<? extends CellsApp.CellType> ov, CellsApp.CellType t, CellsApp.CellType t1) {

            switch (t1) {
                case ChoiceBox:
                    testedControl.setCellFactory(ChoiceBoxListCell.forListView(new CellCustomStringConverter(), someValues));
                    break;
                case ComboBox:
                    testedControl.setCellFactory(ComboBoxListCell.forListView(new CellCustomStringConverter(), someValues));
                    break;
                case TextField:
                    testedControl.setCellFactory(TextFieldListCell.forListView(new CellCustomStringConverter()));
                    break;
                default:
                    testedControl.setCellFactory(new ListView().getCellFactory());
            }
        }
    });
    return cb;
}
项目:marathonv5    文件:JavaFXElementFactory.java   
public static void reset() {
    add(Node.class, JavaFXElement.class);
    add(TextInputControl.class, JavaFXTextInputControlElement.class);
    add(HTMLEditor.class, JavaFXHTMLEditor.class);
    add(CheckBox.class, JavaFXCheckBoxElement.class);
    add(ToggleButton.class, JavaFXToggleButtonElement.class);
    add(Slider.class, JavaFXSliderElement.class);
    add(Spinner.class, JavaFXSpinnerElement.class);
    add(SplitPane.class, JavaFXSplitPaneElement.class);
    add(ProgressBar.class, JavaFXProgressBarElement.class);
    add(ChoiceBox.class, JavaFXChoiceBoxElement.class);
    add(ColorPicker.class, JavaFXColorPickerElement.class);
    add(ComboBox.class, JavaFXComboBoxElement.class);
    add(DatePicker.class, JavaFXDatePickerElement.class);
    add(TabPane.class, JavaFXTabPaneElement.class);
    add(ListView.class, JavaFXListViewElement.class);
    add(TreeView.class, JavaFXTreeViewElement.class);
    add(TableView.class, JavaFXTableViewElement.class);
    add(TreeTableView.class, JavaFXTreeTableViewElement.class);
    add(CheckBoxListCell.class, JavaFXCheckBoxListCellElement.class);
    add(ChoiceBoxListCell.class, JavaFXChoiceBoxListCellElement.class);
    add(ComboBoxListCell.class, JavaFXComboBoxListCellElemnt.class);
    add(CheckBoxTreeCell.class, JavaFXCheckBoxTreeCellElement.class);
    add(ChoiceBoxTreeCell.class, JavaFXChoiceBoxTreeCellElement.class);
    add(ComboBoxTreeCell.class, JavaFXComboBoxTreeCellElement.class);
    add(TableCell.class, JavaFXTableViewCellElement.class);
    add(CheckBoxTableCell.class, JavaFXCheckBoxTableCellElement.class);
    add(ChoiceBoxTableCell.class, JavaFXChoiceBoxTableCellElement.class);
    add(ComboBoxTableCell.class, JavaFXComboBoxTableCellElemnt.class);
    add(TreeTableCell.class, JavaFXTreeTableCellElement.class);
    add(CheckBoxTreeTableCell.class, JavaFXCheckBoxTreeTableCell.class);
    add(ChoiceBoxTreeTableCell.class, JavaFXChoiceBoxTreeTableCell.class);
    add(ComboBoxTreeTableCell.class, JavaFXComboBoxTreeTableCell.class);
}
项目:marathonv5    文件:ComboBoxListViewSample.java   
public ComboBoxListViewSample() {
    ListView<Object> listView = new ListView<>();
    listView.getItems().addAll(items);
    listView.setEditable(true);
    listView.setCellFactory(ComboBoxListCell.forListView(items));
    getChildren().add(listView);
}
项目:Map-Projections    文件:MapApplication.java   
/**
 * Create a set of widgets to choose a Projection
 * @param defProj The default projection, before the user chooses anything
 * @return the full formatted Region
 */
protected Region buildProjectionSelector(Procedure projectionSetter) {
    final Label label = new Label("Projection:");
    projectionChooser =
            new ComboBox<Projection>(FXCollections.observableArrayList(FEATURED_PROJECTIONS));
    projectionChooser.getItems().add(Projection.NULL_PROJECTION);
    projectionChooser.setPrefWidth(COMBOBOX_WIDTH);

    final Text description = new Text();
    description.setWrappingWidth(GUI_WIDTH);

    projectionChooser.valueProperty().addListener((observable, old, now) -> {
            projectionChooser.setButtonCell(new ComboBoxListCell<Projection>()); //This makes it properly display values not in the featured list

            final boolean suppressedListeners = suppressListeners.isSet(); //save this value, because revealParameters()...
            if (projectionChooser.getValue() == Projection.NULL_PROJECTION) {
                chooseProjectionFromExpandedList(old); //<aside>NULL_PROJECTION is the "More..." button. It triggers the expanded list</aside>
            }
            else {
                description.setText(projectionChooser.getValue().getDescription());
                revealParameters(projectionChooser.getValue()); //...clears suppressListeners. That's fine,
                if (!suppressedListeners) //because suppressListeners is only needed here for that one case.
                    projectionSetter.execute();
            }
        });

    HBox comboRow = new HBox(H_SPACE, label, projectionChooser);
    comboRow.setAlignment(Pos.CENTER_LEFT);
    return new VBox(V_SPACE, comboRow, description);
}
项目:javafx-dpi-scaling    文件:AdjusterTest.java   
@Test
public void testGetComboBoxListCellAdjuster() {
    Adjuster adjuster = Adjuster.getAdjuster(ComboBoxListCell.class);

    assertThat(adjuster, is(instanceOf(ControlAdjuster.class)));
    assertThat(adjuster.getNodeClass(), is(sameInstance(Control.class)));
}
项目:marathonv5    文件:JavaFXComboBoxListCellElemnt.java   
@SuppressWarnings("unchecked") @Override public String _getValue() {
    @SuppressWarnings("rawtypes")
    ComboBoxListCell cell = (ComboBoxListCell) getComponent();
    return cell.getConverter().toString(cell.getItem());
}
项目:marathonv5    文件:RFXComboBoxListCell.java   
@SuppressWarnings("unchecked") @Override public String _getValue() {
    @SuppressWarnings("rawtypes")
    ComboBoxListCell cell = (ComboBoxListCell) node;
    return cell.getConverter().toString(cell.getItem());
}
项目:gemoc-studio-modeldebugging    文件:EventManagerRenderer.java   
public EventManagerRenderer() {
        getChildren().add(borderPane);

        borderPane.minWidthProperty().bind(widthProperty());
        borderPane.maxWidthProperty().bind(widthProperty());
        borderPane.minHeightProperty().bind(heightProperty());
        borderPane.maxHeightProperty().bind(heightProperty());

        pushButton.setOnAction(e -> {
            eventTypeToSelectedEvents.get(eventListView.getSelectionModel().getSelectedItem()).forEach(event -> {
                pushedEvents.add(event);
            });
        });

        sendButton.setOnAction(e -> {
            pushedEvents.forEach(eventManager::queueEvent);
            eventTypeToEventTableView.values().forEach(t -> t.getSelectionModel().clearSelection());
//          eventTypeToSelectedEvents.forEach((k,v) -> v.clear());
            pushedEvents.clear();
        });

        header.getChildren().addAll(pushButton, sendButton);

        eventListView.setCellFactory((l) -> new ComboBoxListCell<EClass>(new StringConverter<EClass>() {
            @Override
            public String toString(EClass object) {
                return object.getName();
            }

            @Override
            public EClass fromString(String string) {
                return null;
            }
        }));

        eventListView.getSelectionModel().selectedItemProperty().addListener((c, o, n) -> {
            scrollPane.setContent(eventTypeToEventTableView.get(n));
        });

        final VBox leftPanel = new VBox();
        leftPanel.getChildren().addAll(eventListView, pushedEventListView);

        borderPane.setTop(header);
        borderPane.setLeft(leftPanel);
        borderPane.setCenter(scrollPane);

        scrollPane.setFitToWidth(true);
        scrollPane.setBorder(Border.EMPTY);
        scrollPane.minHeightProperty().bind(leftPanel.heightProperty());
        scrollPane.maxHeightProperty().bind(leftPanel.heightProperty());
        final ListChangeListener<EClass> eventTypesChangeListener = c -> {
            while (c.next()) {
                c.getRemoved().stream().forEach(e -> {
                    eventTypeToEventTableView.remove(e);
                    eventTypeToSelectedEvents.remove(e);
                });
                c.getAddedSubList().stream().forEach(e -> {
                    final EventTableView tableView = new EventTableView(e, executedModel, eventManager);
                    eventTypeToEventTableView.put(e, tableView);
                    final List<EventInstance> selectedEvents = new ArrayList<>();
                    eventTypeToSelectedEvents.put(e, selectedEvents);

                    final ListChangeListener<EventInstance> selectedEventsChangeListener = c1 -> {
                        while (c1.next()) {
                            selectedEvents.removeAll(c1.getRemoved());
                            selectedEvents.addAll(c1.getAddedSubList());
                        }
                    };

                    tableView.getSelectionModel().getSelectedItems().addListener(selectedEventsChangeListener);
                    tableView.refreshEvents();
                    tableView.minHeightProperty().bind(scrollPane.heightProperty().subtract(2));
                });
            }
        };
        eventList.addListener(eventTypesChangeListener);
    }
项目:roda-in    文件:InspectionPane.java   
private HBox createTypeComboBox(Sip descOb) {
  HBox result = new HBox(10);
  result.setAlignment(Pos.CENTER_LEFT);

  // Text field for the OTHER content type
  TextField otherTextField = new TextField();
  otherTextField.textProperty().addListener((obs, old, newValue) -> {
    descOb.getContentType().setOtherType(newValue);
    editButton.setText(newValue);

  });
  // Content Type combo box
  contentType = new ComboBox<>();
  List<Pair> contTypeList = new ArrayList<>();

  result.getChildren().addAll(contentType);

  Pair selected = null;
  for (IPContentType.IPContentTypeEnum ct : IPContentType.IPContentTypeEnum.values()) {
    IPContentType ipCT = new IPContentType(ct);
    Pair toAdd = new Pair(ipCT, ipCT.getType());
    contTypeList.add(toAdd);
    if (ipCT.asString().equalsIgnoreCase(descOb.getContentType().asString())) {
      selected = toAdd;
    }
  }
  // sort the list as strings
  Collections.sort(contTypeList, (o1, o2) -> o1.toString().compareTo(o2.toString()));
  contentType.setItems(FXCollections.observableList(contTypeList));
  contentType.getSelectionModel().select(selected);
  editButton.setText(((IPContentType) selected.getKey()).asString());

  contentType.valueProperty().addListener((obs, old, newValue) -> {
    descOb.setContentType((IPContentType) newValue.getKey());
    if (old != null || ((IPContentType) newValue.getKey()).getType() != IPContentType.IPContentTypeEnum.MIXED) {
      editButton.setText(((IPContentType) newValue.getKey()).asString());
    }
    if (((IPContentType) newValue.getKey()).getType() == IPContentType.IPContentTypeEnum.OTHER) {
      if (!result.getChildren().contains(otherTextField)) {
        result.getChildren().add(otherTextField);
        otherTextField.setText(descOb.getContentType().getOtherType());
      }
    } else {
      if (result.getChildren().contains(otherTextField))
        result.getChildren().remove(otherTextField);
    }
  });
  contentType.getSelectionModel().select(new Pair(descOb.getContentType(), descOb.getContentType().getType()));
  contentType.setMinWidth(85);
  contentType.setCellFactory(param -> new ComboBoxListCell<Pair>() {
    @Override
    public void updateItem(Pair item, boolean empty) {
      super.updateItem(item, empty);
      if (item != null && item.getKey() != null) {
        String translation = I18n
          .t(Constants.I18N_INSPECTIONPANE_IP_CONTENT_TYPE_PREFIX + item.getValue().toString());
        if (translation == null || "".equals(translation))
          translation = item.getValue().toString();
        setTooltip(new Tooltip(translation));
      }
    }
  });
  contentType.setTooltip(new Tooltip(I18n.t(Constants.I18N_INSPECTIONPANE_SIP_TYPE_TOOLTIP)));
  return result;
}
项目:ModelDebugging    文件:EventManagerRenderer.java   
public EventManagerRenderer() {
    getChildren().add(borderPane);

    borderPane.minWidthProperty().bind(widthProperty());
    borderPane.maxWidthProperty().bind(widthProperty());
    borderPane.minHeightProperty().bind(heightProperty());
    borderPane.maxHeightProperty().bind(heightProperty());

    pushButton.setOnAction(e -> {
        eventTypeToSelectedEvents.get(eventListView.getSelectionModel().getSelectedItem()).forEach(event -> {
            pushedEvents.add(event);
        });
    });

    sendButton.setOnAction(e -> {
        pushedEvents.forEach(eventManager::sendEvent);
        pushedEvents.clear();
    });

    header.getChildren().addAll(pushButton, sendButton);

    eventListView.setCellFactory((l) -> new ComboBoxListCell<EClass>(new StringConverter<EClass>() {
        @Override
        public String toString(EClass object) {
            return object.getName();
        }

        @Override
        public EClass fromString(String string) {
            return null;
        }
    }));

    eventListView.getSelectionModel().selectedItemProperty().addListener((c, o, n) -> {
        scrollPane.setContent(eventTypeToEventTableView.get(n));
    });

    final VBox leftPanel = new VBox();
    leftPanel.getChildren().addAll(eventListView, pushedEventListView);

    borderPane.setTop(header);
    borderPane.setLeft(leftPanel);
    borderPane.setCenter(scrollPane);

    scrollPane.setFitToWidth(true);
    scrollPane.setBorder(Border.EMPTY);
    scrollPane.minHeightProperty().bind(leftPanel.heightProperty());
    scrollPane.maxHeightProperty().bind(leftPanel.heightProperty());
    final ListChangeListener<EClass> eventTypesChangeListener = c -> {
        while (c.next()) {
            c.getRemoved().stream().forEach(e -> {
                eventTypeToEventTableView.remove(e);
                eventTypeToSelectedEvents.remove(e);
            });
            c.getAddedSubList().stream().forEach(e -> {
                final EventTableView tableView = new EventTableView(e, executedModel, eventManager);
                eventTypeToEventTableView.put(e, tableView);
                final List<EObject> selectedEvents = new ArrayList<>();
                eventTypeToSelectedEvents.put(e, selectedEvents);

                final ListChangeListener<EObject> selectedEventsChangeListener = c1 -> {
                    while (c1.next()) {
                        selectedEvents.removeAll(c1.getRemoved());
                        selectedEvents.addAll(c1.getAddedSubList());
                    }
                };

                tableView.getSelectionModel().getSelectedItems().addListener(selectedEventsChangeListener);
                tableView.refreshEvents();
                tableView.minHeightProperty().bind(scrollPane.heightProperty().subtract(2));
            });
        }
    };
    eventList.addListener(eventTypesChangeListener);
}