private void initComponents() { final JPanel contentPane = new JPanel(); final GroupLayout layout = new GroupLayout(contentPane); contentPane.setLayout(layout); layout.setAutoCreateContainerGaps(true); layout.setAutoCreateGaps(true); layout.setHorizontalGroup( layout .createParallelGroup(Alignment.CENTER, true) .addComponent(getTabbedPane(), DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(getButtonPnl(), DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE)); layout.setVerticalGroup( layout .createSequentialGroup() .addComponent(getTabbedPane(), DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(getButtonPnl(), PREFERRED_SIZE, DEFAULT_SIZE, PREFERRED_SIZE)); setContentPane(contentPane); LookAndFeelUtil.setDefaultOkCancelKeyStrokes( getRootPane(), getApplyBtn().getAction(), getDoneBtn().getAction()); getRootPane().setDefaultButton(getApplyBtn()); pack(); }
@SuppressWarnings("serial") public void showCredits() { dialog = new JDialog(parent, true); dialog.setUndecorated(true); final ScrollingLinesPanel panel = new ScrollingLinesPanel(image, lines); panel.setBorder(BorderFactory.createLineBorder(UIManager.getColor("Separator.foreground"))); dialog.add(panel); dialog.pack(); dialog.validate(); dialog.setPreferredSize(panel.getPreferredSize()); centerDialogLocation(dialog); Action scrollText = new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { panel.incrementYPos(); dialog.repaint(); } }; timer = new Timer(100, scrollText); dialog.addMouseListener( new MouseAdapter() { @Override public void mouseClicked(MouseEvent e) { hideCredits(); } }); Action cancelAction = new AbstractAction() { @Override public void actionPerformed(ActionEvent e) { hideCredits(); } }; LookAndFeelUtil.setDefaultOkCancelKeyStrokes(dialog.getRootPane(), null, cancelAction); timer.start(); dialog.setVisible(true); }