Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import com.intellij.openapi.options.Configurable;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.TextBrowseFolderListener;
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.vfs.VirtualFile;
Expand All @@ -18,6 +19,7 @@
import org.jetbrains.annotations.Nullable;

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
Expand Down Expand Up @@ -78,13 +80,13 @@ public String getHelpTopic() {
}

public JComponent createComponent() {
pathToTranslationRootTextField.getButton().addMouseListener(createPathButtonMouseListener(pathToTranslationRootTextField.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
pathToTranslationRootTextField.addBrowseFolderListener(createBrowseFolderListener(pathToTranslationRootTextField.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
pathToTranslationRootTextFieldReset.addMouseListener(createResetPathButtonMouseListener(pathToTranslationRootTextField.getTextField(), Settings.DEFAULT_TRANSLATION_PATH));

directoryToApp.getButton().addMouseListener(createPathButtonMouseListener(directoryToApp.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
directoryToApp.addBrowseFolderListener(createBrowseFolderListener(directoryToApp.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
directoryToAppReset.addMouseListener(createResetPathButtonMouseListener(directoryToApp.getTextField(), Settings.DEFAULT_APP_DIRECTORY));

directoryToWeb.getButton().addMouseListener(createPathButtonMouseListener(directoryToWeb.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
directoryToWeb.addBrowseFolderListener(createBrowseFolderListener(directoryToWeb.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
directoryToWebReset.addMouseListener(createResetPathButtonMouseListener(directoryToWeb.getTextField(), Settings.DEFAULT_WEB_DIRECTORY));

enableSchedulerCheckBox.setEnabled(WebDeploymentUtil.isEnabled(project));
Expand Down Expand Up @@ -169,14 +171,10 @@ private void updateUIFromSettings() {
directoryToWeb.setText(getSettings().directoryToWeb);
}

private MouseListener createPathButtonMouseListener(final JTextField textField, final FileChooserDescriptor fileChooserDescriptor) {
return new MouseListener() {
@Override
public void mouseClicked(MouseEvent mouseEvent) {
}

private TextBrowseFolderListener createBrowseFolderListener(final JTextField textField, final FileChooserDescriptor fileChooserDescriptor) {
return new TextBrowseFolderListener(fileChooserDescriptor) {
@Override
public void mousePressed(MouseEvent mouseEvent) {
public void actionPerformed(ActionEvent e) {
VirtualFile projectDirectory = project.getBaseDir();
VirtualFile selectedFile = FileChooser.chooseFile(
fileChooserDescriptor,
Expand All @@ -195,18 +193,6 @@ public void mousePressed(MouseEvent mouseEvent) {

textField.setText(path);
}

@Override
public void mouseReleased(MouseEvent mouseEvent) {
}

@Override
public void mouseEntered(MouseEvent mouseEvent) {
}

@Override
public void mouseExited(MouseEvent mouseEvent) {
}
};
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
package fr.adrienbrault.idea.symfony2plugin.profiler.ui;

import com.intellij.openapi.fileChooser.FileChooser;
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
import com.intellij.openapi.options.Configurable;
import com.intellij.openapi.options.ConfigurationException;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.TextBrowseFolderListener;
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.vfs.VirtualFile;
Expand All @@ -14,6 +16,7 @@
import org.jetbrains.annotations.Nullable;

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

Expand Down Expand Up @@ -50,7 +53,8 @@ public String getHelpTopic() {
@Nullable
@Override
public JComponent createComponent() {
textLocalProfilerCsvPath.getButton().addMouseListener(new MyMouseListener());
textLocalProfilerCsvPath.addBrowseFolderListener(createBrowseFolderListener(textLocalProfilerCsvPath.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));

return mainPanel;
}

Expand Down Expand Up @@ -106,49 +110,35 @@ public void disposeUIResources() {

}

private class MyMouseListener implements MouseListener {
@Override
public void mouseClicked(MouseEvent mouseEvent) {
}

@Override
public void mousePressed(MouseEvent mouseEvent) {
VirtualFile projectDirectory = project.getBaseDir();

String text = textLocalProfilerCsvPath.getText();
VirtualFile toSelect = VfsUtil.findRelativeFile(text, projectDirectory);
if(toSelect == null) {
toSelect = projectDirectory;
}

VirtualFile selectedFile = FileChooser.chooseFile(
FileChooserDescriptorFactory.createSingleFileDescriptor("csv"),
project,
toSelect
);

if (null == selectedFile) {
return;
}

String path = VfsUtil.getRelativePath(selectedFile, projectDirectory, '/');
if (null == path) {
path = selectedFile.getPath();
private TextBrowseFolderListener createBrowseFolderListener(final JTextField textField, final FileChooserDescriptor fileChooserDescriptor) {
return new TextBrowseFolderListener(fileChooserDescriptor) {
@Override
public void actionPerformed(ActionEvent e) {
VirtualFile projectDirectory = project.getBaseDir();

String text = textField.getText();
VirtualFile toSelect = VfsUtil.findRelativeFile(text, projectDirectory);
if(toSelect == null) {
toSelect = projectDirectory;
}

VirtualFile selectedFile = FileChooser.chooseFile(
FileChooserDescriptorFactory.createSingleFileDescriptor("csv"),
project,
toSelect
);

if (null == selectedFile) {
return;
}

String path = VfsUtil.getRelativePath(selectedFile, projectDirectory, '/');
if (null == path) {
path = selectedFile.getPath();
}

textField.setText(path);
}

textLocalProfilerCsvPath.setText(path);
}

@Override
public void mouseReleased(MouseEvent mouseEvent) {
}

@Override
public void mouseEntered(MouseEvent mouseEvent) {
}

@Override
public void mouseExited(MouseEvent mouseEvent) {
}
};
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.TextBrowseFolderListener;
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.vfs.VirtualFile;
Expand Down Expand Up @@ -58,7 +59,7 @@ public TwigNamespaceDialog(Project project, TableView<TwigPath> tableView) {

buttonCancel.addActionListener(e -> onCancel());

namespacePath.getButton().addMouseListener(createPathButtonMouseListener(namespacePath.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));
namespacePath.addBrowseFolderListener(createBrowseFolderListener(namespacePath.getTextField(), FileChooserDescriptorFactory.createSingleFolderDescriptor()));

setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter() {
Expand Down Expand Up @@ -112,19 +113,15 @@ private void onCancel() {
dispose();
}

private MouseListener createPathButtonMouseListener(final JTextField textField, final FileChooserDescriptor fileChooserDescriptor) {
return new MouseListener() {
private TextBrowseFolderListener createBrowseFolderListener(final JTextField textField, final FileChooserDescriptor fileChooserDescriptor) {
return new TextBrowseFolderListener(fileChooserDescriptor) {
@Override
public void mouseClicked(MouseEvent mouseEvent) {
}

@Override
public void mousePressed(MouseEvent mouseEvent) {
public void actionPerformed(ActionEvent e) {
VirtualFile projectDirectory = project.getBaseDir();
VirtualFile selectedFile = FileChooser.chooseFile(
fileChooserDescriptor,
project,
VfsUtil.findRelativeFile(textField.getText(), projectDirectory)
fileChooserDescriptor,
project,
VfsUtil.findRelativeFile(textField.getText(), projectDirectory)
);

if (null == selectedFile) {
Expand All @@ -138,22 +135,9 @@ public void mousePressed(MouseEvent mouseEvent) {

textField.setText(path);
}

@Override
public void mouseReleased(MouseEvent mouseEvent) {
}

@Override
public void mouseEntered(MouseEvent mouseEvent) {
}

@Override
public void mouseExited(MouseEvent mouseEvent) {
}
};
}


private class ChangeDocumentListener implements DocumentListener {
@Override
public void insertUpdate(DocumentEvent e) {
Expand Down