in kit/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/InspectorPanelController.java [884:949]
private void buildFlatContent(GridPane gridPane) {
// System.out.println("\nBuilding Flat panel" + " - Selection : " + selection.getEntries());
gridPane.getChildren().clear();
gridPane.getRowConstraints().clear();
if (handleSelectionMessage(gridPane)) {
return;
}
if (isSearch(gridPane) && !hasSearchPattern()) {
addMessage(gridPane, I18N.getString("inspector.message.searchpattern.empty"));
return;
}
boolean isOrderdByType = getViewMode() == ViewMode.PROPERTY_TYPE;
// Get Metadata
Set<ValuePropertyMetadata> propMetadatas = getValuePropertyMetadata();
if (propMetadatas.isEmpty()) {
addMessage(gridPane, I18N.getString("inspector.message.no.properties"));
return;
}
List<ValuePropertyMetadata> propMetadataList = Arrays.asList(propMetadatas.toArray(new ValuePropertyMetadata[propMetadatas.size()]));
if (isOrderdByType) {
Collections.sort(propMetadataList, new ValuePropertyMetadataClassComparator());
} else {
Collections.sort(propMetadataList, new ValuePropertyMetadataNameComparator());
}
List<ValuePropertyMetadata> orderedPropMetadatas = new ArrayList<>();
for (ValuePropertyMetadata valuePropMeta : propMetadataList) {
if (isSearch(gridPane) && !isSearchPatternMatch(valuePropMeta)) {
continue;
}
if (valuePropMeta.isStaticProperty() && !isStaticPropertyRelevant(valuePropMeta.getName())) {
continue;
}
if (isEditedMode()) {
if (!isPropertyEdited(valuePropMeta, propMetadataList)) {
continue;
}
}
orderedPropMetadatas.add(valuePropMeta);
}
if (orderedPropMetadatas.isEmpty()) {
displayEmptyMessage(gridPane);
return;
}
int lineIndex = 0;
Set<PropertyName> groupProperties = new HashSet<>();
for (ValuePropertyMetadata propMeta : orderedPropMetadatas) {
if (isGroupedProperty(propMeta.getName())) {
if (groupProperties.contains(propMeta.getName())) {
continue;
}
// Several properties are grouped in a single editor (e.g. AnchorPane constraints)
PropertiesEditor propertiesEditor
= getInitializedPropertiesEditor(propMeta.getName(), new HashSet<>(orderedPropMetadatas), groupProperties);
if (propertiesEditor == null) {
continue;
}
lineIndex = addInGridPane(gridPane, propertiesEditor, lineIndex);
} else {
lineIndex = addInGridPane(gridPane, getInitializedPropertyEditor(propMeta), lineIndex);
}
}
}