source: src/main/java/genius/gui/About.java@ 61

Last change on this file since 61 was 16, checked in by Wouter Pasman, 6 years ago

#2 Connected more to mainPanel. Renamed MainPanelInterface to GeniusAppInterface, as it seems a=priori restrictive to have a interface to a GUI. Refactored DomainRepositoryUI to be independent of a parent to provide a JTree.

File size: 9.0 KB
RevLine 
[1]1package genius.gui;
2
3import java.awt.Cursor;
4import java.awt.Desktop;
5import java.awt.Dimension;
6import java.awt.Toolkit;
7import java.awt.event.MouseAdapter;
8import java.awt.event.MouseEvent;
9import java.net.URI;
10
11import javax.swing.Icon;
12import javax.swing.ImageIcon;
13
14/**
15 * The about menu created using Netbeans.
16 *
17 * @author Mark Hendrikx
18 */
19public class About extends javax.swing.JFrame {
20
21 private javax.swing.JLabel contributorsLabel;
22 private javax.swing.JTextArea contributorsValueLabel;
23 private javax.swing.JScrollPane contributorsValueScrollPane;
24 private javax.swing.JTextArea geniusDescription;
25 private javax.swing.JScrollPane geniusDescriptionScrollPane;
26 private javax.swing.JLabel logo;
27 private javax.swing.JLabel productVersionLabel;
28 private javax.swing.JLabel productVersionValueLable;
29 private javax.swing.JLabel websiteLabel;
30 private javax.swing.JLabel websiteValueLabel;
[16]31 private final String GENIUSLINK = "http://ii.tudelft.nl/genius/";
[1]32
33 /**
34 * Creates new form About
35 */
36 public About() {
37 Toolkit tk = Toolkit.getDefaultToolkit();
38 Dimension screenSize = tk.getScreenSize();
39 this.setLocation(screenSize.width / 4, screenSize.height / 4);
40 initComponents();
41 }
42
43 // <editor-fold defaultstate="collapsed" desc="Generated Code">
44 private void initComponents() {
45
46 contributorsValueScrollPane = new javax.swing.JScrollPane();
47 contributorsValueLabel = new javax.swing.JTextArea();
48 logo = new javax.swing.JLabel();
49 productVersionLabel = new javax.swing.JLabel();
50 websiteLabel = new javax.swing.JLabel();
51 contributorsLabel = new javax.swing.JLabel();
52 productVersionValueLable = new javax.swing.JLabel();
53 websiteValueLabel = new javax.swing.JLabel();
54 geniusDescriptionScrollPane = new javax.swing.JScrollPane();
55 geniusDescription = new javax.swing.JTextArea();
56
57 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
58 setResizable(false);
59
[15]60 contributorsValueScrollPane
61 .setBackground(new java.awt.Color(255, 255, 255));
[1]62
63 contributorsValueLabel.setEditable(false);
64 contributorsValueLabel.setColumns(20);
65 contributorsValueLabel.setFont(new java.awt.Font("Calibri", 0, 14)); // NOI18N
66 contributorsValueLabel.setLineWrap(true);
67 contributorsValueLabel.setRows(5);
68 contributorsValueLabel.setText(
69 "R. Aydogan\nT. Baarslag\nA. Dirkzwager\nM. Hendrikx\nK. Hindriks\nW. Pasman\nD. Tykhonov\nD. Festen\nand others...");
70 contributorsValueLabel.setWrapStyleWord(true);
71 contributorsValueLabel.setOpaque(false);
72 contributorsValueScrollPane.setViewportView(contributorsValueLabel);
73
[15]74 Icon icon = new ImageIcon(getClass().getClassLoader()
75 .getResource("genius/gui/resources/GeniusLogo.png"));
[1]76 logo.setIcon(icon); // NOI18N
77
78 productVersionLabel.setFont(new java.awt.Font("Calibri", 1, 18)); // NOI18N
79 productVersionLabel.setText("Production version:");
80
81 websiteLabel.setFont(new java.awt.Font("Calibri", 1, 18)); // NOI18N
82 websiteLabel.setText("Website:");
83
84 contributorsLabel.setFont(new java.awt.Font("Calibri", 1, 18)); // NOI18N
85 contributorsLabel.setText("Contributors:");
86
87 productVersionValueLable.setFont(new java.awt.Font("Calibri", 0, 18)); // NOI18N
[15]88 productVersionValueLable
89 .setText(getClass().getPackage().getImplementationVersion());
[1]90
91 websiteValueLabel.setFont(new java.awt.Font("Calibri", 0, 18)); // NOI18N
[15]92 websiteValueLabel
93 .setText("<html><a href=\"\">" + GENIUSLINK + "</a></html>");
[1]94 websiteValueLabel.setCursor(new Cursor(Cursor.HAND_CURSOR));
95 websiteValueLabel.addMouseListener(new MouseAdapter() {
96 @Override
97 public void mouseClicked(MouseEvent e) {
98 try {
99 Desktop.getDesktop().browse(new URI(GENIUSLINK));
100 } catch (Exception e2) {
101 }
102 }
103 });
104
[15]105 geniusDescriptionScrollPane
106 .setBackground(new java.awt.Color(255, 255, 255));
[1]107 geniusDescription.setFocusable(false);
108
109 geniusDescription.setEditable(false);
110 geniusDescription.setColumns(20);
111 geniusDescription.setFont(new java.awt.Font("Calibri", 0, 20)); // NOI18N
112 geniusDescription.setLineWrap(true);
113 geniusDescription.setRows(5);
114 geniusDescription.setText(
115 "Genius is a negotiation environment that implements an open architecture for heterogeneous negotiating agents. Genius can be used to implement, or simulate, real life negotiations. This version includes a set of scenarios, negotiation strategies, and quality measures to quantify the performance of an agent.");
116 geniusDescription.setWrapStyleWord(true);
117 geniusDescription.setOpaque(false);
118 geniusDescriptionScrollPane.setViewportView(geniusDescription);
119
[15]120 javax.swing.GroupLayout layout = new javax.swing.GroupLayout(
121 getContentPane());
[1]122 getContentPane().setLayout(layout);
[15]123 layout.setHorizontalGroup(layout
124 .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
125 .addGroup(layout.createSequentialGroup().addContainerGap()
126 .addGroup(layout
127 .createParallelGroup(
128 javax.swing.GroupLayout.Alignment.LEADING)
129 .addGroup(
[1]130 javax.swing.GroupLayout.Alignment.TRAILING,
[15]131 layout.createSequentialGroup()
132 .addGap(0, 0, Short.MAX_VALUE)
133 .addComponent(logo,
134 javax.swing.GroupLayout.PREFERRED_SIZE,
135 582,
136 javax.swing.GroupLayout.PREFERRED_SIZE))
137 .addGroup(layout.createSequentialGroup()
[1]138 .addGroup(layout
[15]139 .createParallelGroup(
[1]140 javax.swing.GroupLayout.Alignment.LEADING)
[15]141 .addComponent(
142 geniusDescriptionScrollPane)
143 .addGroup(
144 layout.createSequentialGroup()
145 .addComponent(
[1]146 contributorsLabel)
[15]147 .addPreferredGap(
148 javax.swing.LayoutStyle.ComponentPlacement.RELATED,
149 javax.swing.GroupLayout.DEFAULT_SIZE,
150 Short.MAX_VALUE)
151 .addComponent(
152 contributorsValueScrollPane,
153 javax.swing.GroupLayout.PREFERRED_SIZE,
154 442,
155 javax.swing.GroupLayout.PREFERRED_SIZE))
156 .addGroup(
157 layout.createSequentialGroup()
[1]158 .addGroup(layout
159 .createParallelGroup(
160 javax.swing.GroupLayout.Alignment.LEADING)
[15]161 .addGroup(
162 layout.createSequentialGroup()
163 .addComponent(
164 productVersionLabel)
165 .addPreferredGap(
166 javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
167 .addComponent(
168 productVersionValueLable,
169 javax.swing.GroupLayout.PREFERRED_SIZE,
170 43,
171 javax.swing.GroupLayout.PREFERRED_SIZE))
172 .addGroup(
173 layout.createSequentialGroup()
174 .addComponent(
175 websiteLabel)
176 .addPreferredGap(
177 javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
178 .addComponent(
179 websiteValueLabel,
180 javax.swing.GroupLayout.PREFERRED_SIZE,
181 390,
182 javax.swing.GroupLayout.PREFERRED_SIZE)))
183 .addGap(0, 0,
184 Short.MAX_VALUE)))
185 .addContainerGap()))));
186 layout.setVerticalGroup(layout
187 .createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
188 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout
189 .createSequentialGroup().addContainerGap()
190 .addComponent(logo,
191 javax.swing.GroupLayout.PREFERRED_SIZE, 234,
[1]192 javax.swing.GroupLayout.PREFERRED_SIZE)
193 .addGap(13, 13, 13)
[15]194 .addComponent(geniusDescriptionScrollPane,
195 javax.swing.GroupLayout.PREFERRED_SIZE,
196 javax.swing.GroupLayout.DEFAULT_SIZE,
197 javax.swing.GroupLayout.PREFERRED_SIZE)
198 .addPreferredGap(
199 javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
200 .addGroup(layout
201 .createParallelGroup(
202 javax.swing.GroupLayout.Alignment.BASELINE)
203 .addComponent(productVersionLabel)
204 .addComponent(productVersionValueLable))
[1]205 .addGap(18, 18, 18)
[15]206 .addGroup(layout
207 .createParallelGroup(
208 javax.swing.GroupLayout.Alignment.BASELINE)
209 .addComponent(websiteLabel)
210 .addComponent(websiteValueLabel))
[1]211 .addGap(18, 18, 18)
[15]212 .addGroup(layout
213 .createParallelGroup(
214 javax.swing.GroupLayout.Alignment.LEADING)
215 .addComponent(contributorsLabel)
216 .addComponent(contributorsValueScrollPane,
217 javax.swing.GroupLayout.PREFERRED_SIZE,
218 javax.swing.GroupLayout.DEFAULT_SIZE,
[1]219 javax.swing.GroupLayout.PREFERRED_SIZE))
[15]220 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE,
221 Short.MAX_VALUE)));
[1]222 setTitle("About");
223 pack();
224 }// </editor-fold>
225}
Note: See TracBrowser for help on using the repository browser.