added switch for markdown preview a source

This commit is contained in:
Radek Davidek 2026-05-19 14:32:21 +02:00
parent ddcd4a03b8
commit 883572ea5c

View File

@ -60,6 +60,7 @@ public class FileEditor extends JFrame {
private JLabel pageOffsetLabel = null; private JLabel pageOffsetLabel = null;
private boolean markdownMode = false; private boolean markdownMode = false;
private JCheckBoxMenuItem markdownItem = null; private JCheckBoxMenuItem markdownItem = null;
private JCheckBoxMenuItem markdownSourceItem = null;
private javax.swing.undo.UndoManager undoManager; private javax.swing.undo.UndoManager undoManager;
// Search support // Search support
@ -738,6 +739,13 @@ public class FileEditor extends JFrame {
markdownItem.addActionListener(e -> setMarkdownMode(markdownItem.getState())); markdownItem.addActionListener(e -> setMarkdownMode(markdownItem.getState()));
viewMenu.add(markdownItem); viewMenu.add(markdownItem);
markdownSourceItem = new JCheckBoxMenuItem("View source");
markdownSourceItem.setState(readOnly && isMarkdownFile() && !markdownMode);
markdownSourceItem.setEnabled(readOnly && isMarkdownFile());
markdownSourceItem.addActionListener(e -> setMarkdownMode(!markdownSourceItem.getState()));
viewMenu.add(markdownSourceItem);
viewMenu.addSeparator();
JCheckBoxMenuItem hexItem = new JCheckBoxMenuItem("Hex view"); JCheckBoxMenuItem hexItem = new JCheckBoxMenuItem("Hex view");
hexItem.setState(hexMode); hexItem.setState(hexMode);
hexItem.addActionListener(e -> { hexItem.addActionListener(e -> {
@ -768,6 +776,10 @@ public class FileEditor extends JFrame {
markdownItem.setState(on); markdownItem.setState(on);
markdownItem.setEnabled(readOnly && isMarkdownFile() && !hexMode && !isImageFile(file)); markdownItem.setEnabled(readOnly && isMarkdownFile() && !hexMode && !isImageFile(file));
} }
if (markdownSourceItem != null) {
markdownSourceItem.setState(readOnly && isMarkdownFile() && !on);
markdownSourceItem.setEnabled(readOnly && isMarkdownFile() && !hexMode && !isImageFile(file));
}
if (on) { if (on) {
renderMarkdown(); renderMarkdown();
@ -1291,6 +1303,9 @@ public class FileEditor extends JFrame {
if (markdownItem != null) { if (markdownItem != null) {
markdownItem.setEnabled(readOnly && isMarkdownFile() && !on && !isImageFile(file)); markdownItem.setEnabled(readOnly && isMarkdownFile() && !on && !isImageFile(file));
} }
if (markdownSourceItem != null) {
markdownSourceItem.setEnabled(readOnly && isMarkdownFile() && !on && !isImageFile(file));
}
if (on) { if (on) {
// ensure bytes loaded // ensure bytes loaded
try { try {