JComponent () { ThreadingAssertions.assertEventDispatchThread(); if (myMainPanel == null) { myMainPanel = new JPanel(new BorderLayout()); myJLayeredPane = new MyDiffContainer(myMainPanel, createCompositeFilter().getUpdateMessage()); Disposer.register(this, myJLayeredPane); add(myJLayeredPane, BorderLayout.CENTER); } if (getEditor() == null) { EditorEx editor = initConsoleEditor(); synchronized (LOCK) { myEditor = editor; } requestFlushImmediately(); myMainPanel.add(createCenterComponent(), BorderLayout.CENTER); } return this; }