You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

PreviewDialogAboutBox.java 3.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. /*
  2. * Copyright 1999-2005 The Apache Software Foundation.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. /* $Id$ */
  17. package org.apache.fop.render.awt.viewer;
  18. //Java
  19. import java.awt.AWTEvent;
  20. import java.awt.BorderLayout;
  21. import java.awt.Dialog;
  22. import java.awt.FlowLayout;
  23. import java.awt.Frame;
  24. import java.awt.GridLayout;
  25. import javax.swing.ImageIcon;
  26. import javax.swing.JButton;
  27. import javax.swing.JLabel;
  28. import javax.swing.JPanel;
  29. import javax.swing.border.EmptyBorder;
  30. import java.awt.event.ActionListener;
  31. import java.awt.event.WindowEvent;
  32. import java.awt.event.ActionEvent;
  33. //FOP
  34. import org.apache.fop.Version;
  35. /**
  36. * AWT Viewer's "About" dialog.
  37. * Originally contributed by:
  38. * Juergen Verwohlt: Juergen.Verwohlt@jCatalog.com,
  39. * Rainer Steinkuhle: Rainer.Steinkuhle@jCatalog.com,
  40. * Stanislav Gorkhover: Stanislav.Gorkhover@jCatalog.com
  41. */
  42. public class PreviewDialogAboutBox extends Dialog implements ActionListener {
  43. private JButton okButton;
  44. /**
  45. * Creates modal "About" dialog, attached to a given parent frame.
  46. * @param parent parent frame
  47. * @param translator Translator for localization
  48. */
  49. public PreviewDialogAboutBox(Frame parent, Translator translator) {
  50. super(parent, true);
  51. enableEvents(AWTEvent.WINDOW_EVENT_MASK);
  52. setTitle(translator.getString("About.Title"));
  53. setResizable(false);
  54. JPanel panel1 = new JPanel();
  55. JPanel panel2 = new JPanel();
  56. JPanel insetsPanel1 = new JPanel();
  57. JPanel insetsPanel2 = new JPanel();
  58. JPanel insetsPanel3 = new JPanel();
  59. okButton = new JButton();
  60. JLabel imageControl1 = new JLabel();
  61. imageControl1.setIcon(new ImageIcon(getClass().getResource("images/fop.gif")));
  62. JLabel label1 = new JLabel(translator.getString("About.Product"));
  63. JLabel label2 = new JLabel(translator.getString("About.Version")
  64. + " " + Version.getVersion());
  65. JLabel label3 = new JLabel(translator.getString("About.Copyright"));
  66. panel1.setLayout(new BorderLayout());
  67. panel2.setLayout(new BorderLayout());
  68. insetsPanel1.setLayout(new FlowLayout());
  69. insetsPanel2.setLayout(new FlowLayout());
  70. insetsPanel2.setBorder(new EmptyBorder(10, 10, 10, 10));
  71. insetsPanel3.setLayout(new GridLayout(3, 1));
  72. insetsPanel3.setBorder(new EmptyBorder(10, 10, 10, 10));
  73. okButton.setText(translator.getString("Button.Ok"));
  74. okButton.addActionListener(this);
  75. insetsPanel2.add(imageControl1, null);
  76. panel2.add(insetsPanel2, BorderLayout.WEST);
  77. insetsPanel3.add(label1);
  78. insetsPanel3.add(label2);
  79. insetsPanel3.add(label3);
  80. panel2.add(insetsPanel3, BorderLayout.CENTER);
  81. insetsPanel1.add(okButton);
  82. panel1.add(insetsPanel1, BorderLayout.SOUTH);
  83. panel1.add(panel2, BorderLayout.NORTH);
  84. add(panel1);
  85. pack();
  86. }
  87. /**
  88. * @see java.awt.Window#processWindowEvent(WindowEvent)
  89. */
  90. protected void processWindowEvent(WindowEvent e) {
  91. if (e.getID() == WindowEvent.WINDOW_CLOSING) {
  92. cancel();
  93. }
  94. super.processWindowEvent(e);
  95. }
  96. private void cancel() {
  97. dispose();
  98. }
  99. /**
  100. * @see java.awt.event.ActionListener#actionPerformed(ActionEvent)
  101. */
  102. public void actionPerformed(ActionEvent e) {
  103. if (e.getSource() == okButton) {
  104. cancel();
  105. }
  106. }
  107. }