edu.uvm.ccts.common.ui.ShowException Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ccts-common Show documentation
Show all versions of ccts-common Show documentation
A library of useful generic objects and tools consolidated here to simplify all UVM CCTS projects
/*
* Copyright 2015 The University of Vermont and State
* Agricultural College. All rights reserved.
*
* Written by Matthew B. Storer
*
* This file is part of CCTS Common.
*
* CCTS Common is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* CCTS Common is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with CCTS Common. If not, see .
*/
/*
* Created by JFormDesigner on Fri Aug 29 13:53:42 EDT 2014
*/
package edu.uvm.ccts.common.ui;
import edu.uvm.ccts.common.util.ExceptionUtil;
import javax.swing.*;
import javax.swing.border.EmptyBorder;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
/**
* @author Matthew Storer
*/
public class ShowException extends JDialog {
public ShowException(Frame owner, String title, Throwable t) {
super(owner);
initComponents();
setup(title, t);
}
public ShowException(Dialog owner, String title, Throwable t) {
super(owner);
initComponents();
setup(title, t);
}
private void setup(String title, Throwable t) {
setTitle(title);
lblClass.setText("" + t.getClass().getName() + "");
lblMessage.setText("" + t.getMessage() + "");
txtStackTrace.setText(ExceptionUtil.getStackTrace(t));
txtStackTrace.setCaretPosition(0);
}
private void okButtonActionPerformed() {
setVisible(false);
}
private void initComponents() {
// JFormDesigner - Component initialization - DO NOT MODIFY //GEN-BEGIN:initComponents
// Generated using JFormDesigner non-commercial license
dialogPane = new JPanel();
contentPanel = new JPanel();
label1 = new JLabel();
label2 = new JLabel();
label3 = new JLabel();
lblMessage = new JLabel();
lblClass = new JLabel();
scrollPane1 = new JScrollPane();
txtStackTrace = new JTextArea();
buttonBar = new JPanel();
okButton = new JButton();
//======== this ========
setTitle("");
setModal(true);
Container contentPane = getContentPane();
contentPane.setLayout(new BorderLayout());
//======== dialogPane ========
{
dialogPane.setBorder(new EmptyBorder(12, 12, 12, 12));
dialogPane.setLayout(new BorderLayout());
//======== contentPanel ========
{
//---- label1 ----
label1.setText("Class:");
//---- label2 ----
label2.setText("Message:");
//---- label3 ----
label3.setText("Stack Trace:");
//---- lblMessage ----
lblMessage.setText("e.getMessage()");
lblMessage.setVerticalAlignment(SwingConstants.TOP);
//---- lblClass ----
lblClass.setText("e.getClass().getName()");
lblClass.setVerticalAlignment(SwingConstants.TOP);
//======== scrollPane1 ========
{
//---- txtStackTrace ----
txtStackTrace.setFont(new Font("Lucida Sans Typewriter", Font.PLAIN, 11));
txtStackTrace.setEditable(false);
scrollPane1.setViewportView(txtStackTrace);
}
GroupLayout contentPanelLayout = new GroupLayout(contentPanel);
contentPanel.setLayout(contentPanelLayout);
contentPanelLayout.setHorizontalGroup(
contentPanelLayout.createParallelGroup()
.addGroup(GroupLayout.Alignment.TRAILING, contentPanelLayout.createSequentialGroup()
.addGroup(contentPanelLayout.createParallelGroup()
.addComponent(label3)
.addComponent(label2)
.addComponent(label1))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(contentPanelLayout.createParallelGroup()
.addComponent(lblClass, GroupLayout.DEFAULT_SIZE, 480, Short.MAX_VALUE)
.addComponent(lblMessage, GroupLayout.DEFAULT_SIZE, 480, Short.MAX_VALUE)))
.addGroup(contentPanelLayout.createSequentialGroup()
.addContainerGap()
.addComponent(scrollPane1, GroupLayout.DEFAULT_SIZE, 524, Short.MAX_VALUE)
.addContainerGap())
);
contentPanelLayout.setVerticalGroup(
contentPanelLayout.createParallelGroup()
.addGroup(GroupLayout.Alignment.TRAILING, contentPanelLayout.createSequentialGroup()
.addGroup(contentPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(label1)
.addComponent(lblClass))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(contentPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(label2)
.addComponent(lblMessage))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(label3)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(scrollPane1, GroupLayout.DEFAULT_SIZE, 139, Short.MAX_VALUE))
);
}
dialogPane.add(contentPanel, BorderLayout.CENTER);
//======== buttonBar ========
{
buttonBar.setBorder(new EmptyBorder(12, 0, 0, 0));
buttonBar.setLayout(new GridBagLayout());
((GridBagLayout)buttonBar.getLayout()).columnWidths = new int[] {0, 80};
((GridBagLayout)buttonBar.getLayout()).columnWeights = new double[] {1.0, 0.0};
//---- okButton ----
okButton.setText("OK");
okButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
okButtonActionPerformed();
}
});
buttonBar.add(okButton, new GridBagConstraints(1, 0, 1, 1, 0.0, 0.0,
GridBagConstraints.CENTER, GridBagConstraints.BOTH,
new Insets(0, 0, 0, 0), 0, 0));
}
dialogPane.add(buttonBar, BorderLayout.SOUTH);
}
contentPane.add(dialogPane, BorderLayout.CENTER);
pack();
setLocationRelativeTo(getOwner());
// JFormDesigner - End of component initialization //GEN-END:initComponents
}
// JFormDesigner - Variables declaration - DO NOT MODIFY //GEN-BEGIN:variables
// Generated using JFormDesigner non-commercial license
private JPanel dialogPane;
private JPanel contentPanel;
private JLabel label1;
private JLabel label2;
private JLabel label3;
private JLabel lblMessage;
private JLabel lblClass;
private JScrollPane scrollPane1;
private JTextArea txtStackTrace;
private JPanel buttonBar;
private JButton okButton;
// JFormDesigner - End of variables declaration //GEN-END:variables
}