use of com.intellij.openapi.fileChooser.FileSaverDescriptor in project android by JetBrains.
the class ScreenshotViewer method doOKAction.
@Override
protected void doOKAction() {
FileSaverDescriptor descriptor = new FileSaverDescriptor(AndroidBundle.message("android.ddms.screenshot.save.title"), "", SdkConstants.EXT_PNG);
FileSaverDialog saveFileDialog = FileChooserFactory.getInstance().createSaveFileDialog(descriptor, myProject);
VirtualFile baseDir = loadScreenshotPath();
VirtualFileWrapper fileWrapper = saveFileDialog.save(baseDir, getDefaultFileName());
if (fileWrapper == null) {
return;
}
myScreenshotFile = fileWrapper.getFile();
try {
ImageIO.write(myDisplayedImageRef.get(), SdkConstants.EXT_PNG, myScreenshotFile);
} catch (IOException e) {
Messages.showErrorDialog(myProject, AndroidBundle.message("android.ddms.screenshot.save.error", e), AndroidBundle.message("android.ddms.actions.screenshot"));
return;
}
VirtualFile virtualFile = fileWrapper.getVirtualFile();
if (virtualFile != null) {
PropertiesComponent properties = PropertiesComponent.getInstance(myProject);
properties.setValue(SCREENSHOT_SAVE_PATH_KEY, virtualFile.getParent().getPath());
}
super.doOKAction();
}
use of com.intellij.openapi.fileChooser.FileSaverDescriptor in project android by JetBrains.
the class ExportDeviceAction method actionPerformed.
@Override
public void actionPerformed(ActionEvent e) {
FileSaverDescriptor descriptor = new FileSaverDescriptor("Export Location", "Select a location for the exported device", "xml");
String homePath = System.getProperty("user.home");
File parentPath = homePath == null ? new File("/") : new File(homePath);
VirtualFile parent = LocalFileSystem.getInstance().findFileByIoFile(parentPath);
VirtualFileWrapper fileWrapper = FileChooserFactory.getInstance().createSaveFileDialog(descriptor, (Project) null).save(parent, "device.xml");
Device device = myProvider.getDevice();
if (device != null && fileWrapper != null) {
DeviceManagerConnection.writeDevicesToFile(ImmutableList.of(device), fileWrapper.getFile());
}
}
use of com.intellij.openapi.fileChooser.FileSaverDescriptor in project intellij-community by JetBrains.
the class AbstractSchemeActions method exportScheme.
/**
* Export the scheme using the given exporter name.
*
* @param scheme The scheme to export.
* @param exporterName The exporter name.
* @see SchemeExporter
* @see SchemeExporterEP
*/
protected void exportScheme(@NotNull T scheme, @NotNull String exporterName) {
SchemeExporter<T> exporter = SchemeExporterEP.getExporter(exporterName, getSchemeType());
if (exporter != null) {
String ext = exporter.getExtension();
FileSaverDialog saver = FileChooserFactory.getInstance().createSaveFileDialog(new FileSaverDescriptor(ApplicationBundle.message("scheme.exporter.ui.file.chooser.title"), ApplicationBundle.message("scheme.exporter.ui.file.chooser.message"), ext), getSchemesPanel());
VirtualFileWrapper target = saver.save(null, SchemeManager.getDisplayName(scheme) + "." + ext);
if (target != null) {
VirtualFile targetFile = target.getVirtualFile(true);
String message;
MessageType messageType;
if (targetFile != null) {
try {
WriteAction.run(() -> {
OutputStream outputStream = targetFile.getOutputStream(this);
try {
exporter.exportScheme(scheme, outputStream);
} finally {
outputStream.close();
}
});
message = ApplicationBundle.message("scheme.exporter.ui.scheme.exported.message", scheme.getName(), getSchemesPanel().getSchemeTypeName(), targetFile.getPresentableUrl());
messageType = MessageType.INFO;
} catch (Exception e) {
message = ApplicationBundle.message("scheme.exporter.ui.export.failed", e.getMessage());
messageType = MessageType.ERROR;
}
} else {
message = ApplicationBundle.message("scheme.exporter.ui.cannot.write.message");
messageType = MessageType.ERROR;
}
getSchemesPanel().showStatus(message, messageType);
}
}
}
use of com.intellij.openapi.fileChooser.FileSaverDescriptor in project azure-tools-for-java by Microsoft.
the class UIHelperImpl method showFileSaver.
@Override
public File showFileSaver(String title, String fileName) {
FileSaverDescriptor fileDescriptor = new FileSaverDescriptor(title, "");
final FileSaverDialog dialog = FileChooserFactory.getInstance().createSaveFileDialog(fileDescriptor, (Project) null);
final VirtualFileWrapper save = dialog.save(LocalFileSystem.getInstance().findFileByPath(System.getProperty("user.home")), fileName);
if (save != null) {
return save.getFile();
}
return null;
}
use of com.intellij.openapi.fileChooser.FileSaverDescriptor in project android by JetBrains.
the class ConfigureAndroidProjectStep method browseForFile.
private void browseForFile() {
FileSaverDescriptor fileSaverDescriptor = new FileSaverDescriptor("Project location", "Please choose a location for your project");
File currentPath = new File(myProjectLocation.getText());
File parentPath = currentPath.getParentFile();
if (parentPath == null) {
String homePath = System.getProperty("user.home");
parentPath = new File(homePath == null ? "/" : homePath);
}
VirtualFile parent = LocalFileSystem.getInstance().findFileByIoFile(parentPath);
String filename = currentPath.getName();
VirtualFileWrapper fileWrapper = FileChooserFactory.getInstance().createSaveFileDialog(fileSaverDescriptor, (Project) null).save(parent, filename);
if (fileWrapper != null) {
myProjectLocation.setText(fileWrapper.getFile().getAbsolutePath());
}
}
Aggregations