Files
VisualSapfor/src/_VisualDVM/Passes/All/CreateEmptyDirectory.java

41 lines
1.7 KiB
Java
Raw Normal View History

2024-10-14 12:14:01 +03:00
package _VisualDVM.Passes.All;
2024-10-14 15:19:13 +03:00
import Common.Passes.PassException;
2024-10-11 00:00:30 +03:00
import Common.Utils.Utils_;
2024-10-09 22:01:19 +03:00
import _VisualDVM.Constants;
import _VisualDVM.Global;
2024-10-14 12:14:01 +03:00
import _VisualDVM.Passes.Project.ChangeFilePass;
import _VisualDVM.Visual.Windows.FileNameForm;
2023-09-17 22:13:42 +03:00
import javax.swing.tree.DefaultMutableTreeNode;
import java.io.File;
import java.nio.file.Paths;
public class CreateEmptyDirectory extends ChangeFilePass {
@Override
protected boolean canStart(Object... args) {
resetArgs();
if ((ff = new FileNameForm()).ShowDialog("Введите имя создаваемой папки")) {
fileName = ff.Result;
//->
parent_node = Global.mainModule.getProjectCurrentParentNode();
2023-09-17 22:13:42 +03:00
target_dir = (File) parent_node.getUserObject();
//->
dst = Paths.get(target_dir.getAbsolutePath(), fileName).toFile();
if (dst.exists()) {
2024-10-11 00:00:30 +03:00
Log.Writeln("Файл с именем " + Utils_.Brackets(fileName) + " уже существует");
2023-09-17 22:13:42 +03:00
return false;
}
if (fileName.equalsIgnoreCase(Constants.data)) {
2024-10-11 00:00:30 +03:00
Log.Writeln(Utils_.Brackets(Constants.data) + " является зарезервированным именем!");
2023-09-17 22:13:42 +03:00
return false;
}
return true;
}
return false;
}
@Override
protected void body() throws Exception {
if (!dst.mkdir()) throw new PassException("Не удалось создать папку.");
Global.mainModule.getUI().getMainWindow().getProjectWindow().getFilesTreeForm().getTree().AddNode(parent_node, dst_node = new DefaultMutableTreeNode(dst));
2023-09-17 22:13:42 +03:00
}
}