2020import org .fife .ui .autocomplete .AutoCompletion ;
2121import org .fife .ui .autocomplete .CompletionProvider ;
2222import org .fife .ui .rsyntaxtextarea .RSyntaxTextArea ;
23+ import org .fife .ui .rtextarea .RTextScrollPane ;
2324import org .fife .ui .rsyntaxtextarea .SyntaxConstants ;
2425import org .fife .ui .rtextarea .SearchEngine ;
2526import org .fife .ui .rtextarea .SearchResult ;
3839import javax .swing .JMenuItem ;
3940import javax .swing .JOptionPane ;
4041import javax .swing .JPanel ;
41- import javax .swing .JScrollPane ;
4242import javax .swing .JSplitPane ;
4343import javax .swing .KeyStroke ;
4444import javax .swing .SwingWorker ;
@@ -85,19 +85,21 @@ public class MainFrame extends JFrame implements SearchListener {
8585 private @ Outlet JMenuItem exitItem = null ;
8686 private @ Outlet JMenuItem aboutItem = null ;
8787 private @ Outlet JSplitPane splitPane = null ;
88- private @ Outlet JScrollPane editorScrollPane = null ;
8988 private @ Outlet JPanel previewPanel = null ;
9089 private @ Outlet JLabel statusBar = null ;
91- private @ Outlet JLabel filePathLabel = null ; // The <label> for the file path
90+ private @ Outlet JLabel filePathLabel = null ;
91+
9292
9393 // --- Manually Created Components ---
9494 private FindDialog findDialog = null ;
9595 private ReplaceDialog replaceDialog = null ;
9696 private RSyntaxTextArea editorPane = null ;
97+ private RTextScrollPane editorScrollPane = null ;
98+
9799
98100 public MainFrame () {
99101 super ("Sierra UI Previewer" );
100-
102+
101103 renderingEngine = new RenderingEngine ();
102104 recentFilesManager = new RecentFilesManager (MainFrame .class );
103105
@@ -245,7 +247,6 @@ private void setupCustomEditor() {
245247 editorPane .setSyntaxEditingStyle (SyntaxConstants .SYNTAX_STYLE_XML );
246248 editorPane .setCodeFoldingEnabled (true );
247249 editorPane .setAntiAliasingEnabled (true );
248- editorPane .setEditable (true ); // Ensure it's editable
249250
250251 var provider = createCompletionProvider ();
251252
@@ -258,8 +259,11 @@ private void setupCustomEditor() {
258259 if (provider != null ) {
259260 ac .install (editorPane );
260261 }
262+ editorScrollPane = new RTextScrollPane (editorPane );
263+ editorScrollPane .setLineNumbersEnabled (true );
264+ editorScrollPane .setFoldIndicatorEnabled (true );
265+ splitPane .setLeftComponent (editorScrollPane );
261266
262- editorScrollPane .setViewportView (editorPane );
263267 }
264268
265269 // -- Extra search/replace functionality
0 commit comments