fun showError()

in src/rider/main/kotlin/com/jetbrains/rider/plugins/dotnetdisassembler/AsmContentPanel.kt [111:138]


    fun showError(message: String, details: String?) {
        if (details.isNullOrBlank()) {
            showMessage(message)
            return
        }

        val detailsLink = HyperlinkLabel(AsmViewerBundle.message("error.show.details")).apply {
            addHyperlinkListener {
                ErrorDetailsDialog(project, details).show()
            }
        }

        val innerPanel = JPanel().apply {
            layout = BoxLayout(this, BoxLayout.Y_AXIS)
            add(JLabel(message).apply { alignmentX = Component.CENTER_ALIGNMENT })
            add(Box.createVerticalStrut(JBUI.scale(8)))
            add(JPanel(FlowLayout(FlowLayout.CENTER, 0, 0)).apply { add(detailsLink) })
        }

        val errorPanel = JPanel(GridBagLayout()).apply {
            add(innerPanel)
        }

        component.removeAll()
        component.add(errorPanel, BorderLayout.CENTER)
        component.revalidate()
        component.repaint()
    }