2323import javafx .geometry .Insets ;
2424import javafx .geometry .Pos ;
2525import javafx .scene .Node ;
26- import javafx .scene .control .*;
26+ import javafx .scene .control .Label ;
27+ import javafx .scene .control .ListCell ;
28+ import javafx .scene .control .Skin ;
29+ import javafx .scene .control .Tooltip ;
2730import javafx .scene .image .Image ;
2831import javafx .scene .image .PixelWriter ;
2932import javafx .scene .image .WritableImage ;
@@ -157,20 +160,9 @@ public void onCreateDirectory() {
157160 return ;
158161
159162 Path parent = currentDirectory .path ;
160- Controllers .dialog ( new InputDialogPane (
163+ Controllers .prompt (
161164 i18n ("schematics.create_directory.prompt" ),
162- "" ,
163165 (result , handler ) -> {
164- if (StringUtils .isBlank (result )) {
165- handler .reject (i18n ("schematics.create_directory.failed.empty_name" ));
166- return ;
167- }
168-
169- if (result .contains ("/" ) || result .contains ("\\ " ) || !FileUtils .isNameValid (result )) {
170- handler .reject (i18n ("schematics.create_directory.failed.invalid_name" ));
171- return ;
172- }
173-
174166 Path targetDir = parent .resolve (result );
175167 if (Files .exists (targetDir )) {
176168 handler .reject (i18n ("schematics.create_directory.failed.already_exists" ));
@@ -185,7 +177,7 @@ public void onCreateDirectory() {
185177 LOG .warning ("Failed to create directory: " + targetDir , e );
186178 handler .reject (i18n ("schematics.create_directory.failed" , targetDir ));
187179 }
188- }));
180+ }, "" , new RequiredValidator (), new Validator ( i18n ( "schematics.create_directory.failed.invalid_name" ), FileUtils :: isNameValid ));
189181 }
190182
191183 private DirItem loadAll (Path dir , @ Nullable DirItem parent ) {
0 commit comments