public void actionPerformed(AnActionEvent e) {
Project project = e.getProject();
VirtualFile file1 = e.getData(PlatformDataKeys.VIRTUAL_FILE);
VirtualFile file2 = getSelectedFileInEditor(e);
if (file1 != null && file2 != null && file1.getFileType() == file2.getFileType()) {
String content1 = Objects.requireNonNull(FileDocumentManager.getInstance().getDocument(file1)).getText();
String content2 = Objects.requireNonNull(FileDocumentManager.getInstance().getDocument(file2)).getText();
DiffContentFactory factory = DiffContentFactory.getInstance();
DiffContent diffContent1 = factory.create(project, content1);
DiffContent diffContent2 = factory.create(project, content2);
// 创建 SimpleDiffRequest,并将 DiffContent 添加到其中
// 创建 SimpleDiffRequest,并将 DiffContent 添加到其中
SimpleDiffRequest request = new SimpleDiffRequest("title", diffContent1, diffContent2, "file1", "file2");
// 使用 DiffManager 显示比较结果
DiffManager.getInstance().showDiff(null, request);
// JPanel panel = (JPanel) DiffManager.getInstance().createRequestPanel(project, null, null);
// // 创建自定义对话框
// DialogBuilder builder = new DialogBuilder();
//
// // 创建要对比的两个字符串
// String leftContent = "Hello, world!";
// String rightContent = "Hello, IntelliJ IDEA!";
// // 设置对话框标题和内容面板
// builder.setTitle("My Dialog");
// JPanel contentPanel = new JPanel();
// JTextArea leftTextArea = new JTextArea(leftContent);
// JTextArea rightTextArea = new JTextArea(rightContent);
// contentPanel.add(leftTextArea);
// contentPanel.add(rightTextArea);
// builder.setCenterPanel(contentPanel);
//
// // 添加“确定”按钮
// builder.addOkAction().setText("OK");
//
// // 添加“取消”按钮
// builder.addCancelAction().setText("Cancel");
//
// // 显示对话框,并在关闭前进行 Diff 请求
// // 显示对话框,并在关闭前进行 Diff 请求
// if (builder.show() == DialogWrapper.OK_EXIT_CODE) {
// leftContent = leftTextArea.getText();
// rightContent = rightTextArea.getText();
// SimpleDiffRequest newDiffRequest = new SimpleDiffRequest("Diff Title",
// DiffContentFactory.getInstance().create(leftContent),
// DiffContentFactory.getInstance().create(rightContent),
// "Left Content", "Right Content");
// DiffManager.getInstance().showDiff(null, newDiffRequest);
// }
}
}
maven-插件开发(idea)-3
于 2024-01-01 12:53:12 首次发布
2036

被折叠的 条评论
为什么被折叠?



