jaroslav@257
|
1 |
/*
|
jaroslav@257
|
2 |
* To change this template, choose Tools | Templates
|
jaroslav@257
|
3 |
* and open the template in the editor.
|
jaroslav@257
|
4 |
*/
|
jaroslav@257
|
5 |
package cz.xelfi.quoridor.desktop.sample;
|
jaroslav@257
|
6 |
|
jaroslav@257
|
7 |
import org.openide.util.NbBundle;
|
jaroslav@257
|
8 |
import org.openide.windows.TopComponent;
|
jaroslav@257
|
9 |
//import org.openide.util.ImageUtilities;
|
jaroslav@257
|
10 |
import org.netbeans.api.settings.ConvertAsProperties;
|
jaroslav@257
|
11 |
|
jaroslav@257
|
12 |
/**
|
jaroslav@260
|
13 |
* Top component which displays the board.
|
jaroslav@257
|
14 |
*/
|
jaroslav@257
|
15 |
@ConvertAsProperties(dtd = "-//cz.xelfi.quoridor.desktop.sample//Kuk//EN",
|
jaroslav@257
|
16 |
autostore = false)
|
jaroslav@257
|
17 |
public final class KukTopComponent extends TopComponent {
|
jaroslav@257
|
18 |
|
jaroslav@257
|
19 |
/** path to the icon used by the component and its open action */
|
jaroslav@257
|
20 |
// static final String ICON_PATH = "SET/PATH/TO/ICON/HERE";
|
jaroslav@257
|
21 |
private static final String PREFERRED_ID = "KukTopComponent";
|
jaroslav@257
|
22 |
|
jaroslav@260
|
23 |
private String id;
|
jaroslav@260
|
24 |
|
jaroslav@257
|
25 |
public KukTopComponent() {
|
jaroslav@257
|
26 |
initComponents();
|
jaroslav@257
|
27 |
|
jaroslav@257
|
28 |
setName(NbBundle.getMessage(KukTopComponent.class, "CTL_KukTopComponent"));
|
jaroslav@257
|
29 |
setToolTipText(NbBundle.getMessage(KukTopComponent.class, "HINT_KukTopComponent"));
|
jaroslav@257
|
30 |
// setIcon(ImageUtilities.loadImage(ICON_PATH, true));
|
jaroslav@260
|
31 |
|
jaroslav@260
|
32 |
}
|
jaroslav@260
|
33 |
|
jaroslav@260
|
34 |
public void setGameId(String id) {
|
jaroslav@260
|
35 |
this.id = id;
|
jaroslav@260
|
36 |
boardPane1.setBoard(Quoridor.getDefault().getGame(id).getBoard());
|
jaroslav@257
|
37 |
}
|
jaroslav@257
|
38 |
|
jaroslav@257
|
39 |
/** This method is called from within the constructor to
|
jaroslav@257
|
40 |
* initialize the form.
|
jaroslav@257
|
41 |
* WARNING: Do NOT modify this code. The content of this method is
|
jaroslav@257
|
42 |
* always regenerated by the Form Editor.
|
jaroslav@257
|
43 |
*/
|
jaroslav@257
|
44 |
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
|
jaroslav@257
|
45 |
private void initComponents() {
|
jaroslav@257
|
46 |
|
jaroslav@257
|
47 |
boardPane1 = new cz.xelfi.quoridor.visidor.BoardPane();
|
jaroslav@257
|
48 |
|
jaroslav@257
|
49 |
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
|
jaroslav@257
|
50 |
this.setLayout(layout);
|
jaroslav@257
|
51 |
layout.setHorizontalGroup(
|
jaroslav@257
|
52 |
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
jaroslav@257
|
53 |
.addGap(0, 450, Short.MAX_VALUE)
|
jaroslav@257
|
54 |
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
jaroslav@257
|
55 |
.addGroup(layout.createSequentialGroup()
|
jaroslav@257
|
56 |
.addGap(0, 0, Short.MAX_VALUE)
|
jaroslav@257
|
57 |
.addComponent(boardPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
jaroslav@257
|
58 |
.addGap(0, 0, Short.MAX_VALUE)))
|
jaroslav@257
|
59 |
);
|
jaroslav@257
|
60 |
layout.setVerticalGroup(
|
jaroslav@257
|
61 |
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
jaroslav@257
|
62 |
.addGap(0, 450, Short.MAX_VALUE)
|
jaroslav@257
|
63 |
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
|
jaroslav@257
|
64 |
.addGroup(layout.createSequentialGroup()
|
jaroslav@257
|
65 |
.addGap(0, 0, Short.MAX_VALUE)
|
jaroslav@257
|
66 |
.addComponent(boardPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
|
jaroslav@257
|
67 |
.addGap(0, 0, Short.MAX_VALUE)))
|
jaroslav@257
|
68 |
);
|
jaroslav@257
|
69 |
}// </editor-fold>//GEN-END:initComponents
|
jaroslav@257
|
70 |
|
jaroslav@257
|
71 |
// Variables declaration - do not modify//GEN-BEGIN:variables
|
jaroslav@257
|
72 |
private cz.xelfi.quoridor.visidor.BoardPane boardPane1;
|
jaroslav@257
|
73 |
// End of variables declaration//GEN-END:variables
|
jaroslav@257
|
74 |
|
jaroslav@257
|
75 |
@Override
|
jaroslav@257
|
76 |
public int getPersistenceType() {
|
jaroslav@257
|
77 |
return TopComponent.PERSISTENCE_ALWAYS;
|
jaroslav@257
|
78 |
}
|
jaroslav@257
|
79 |
|
jaroslav@257
|
80 |
@Override
|
jaroslav@257
|
81 |
public void componentOpened() {
|
jaroslav@257
|
82 |
// TODO add custom code on component opening
|
jaroslav@257
|
83 |
}
|
jaroslav@257
|
84 |
|
jaroslav@257
|
85 |
@Override
|
jaroslav@257
|
86 |
public void componentClosed() {
|
jaroslav@257
|
87 |
// TODO add custom code on component closing
|
jaroslav@257
|
88 |
}
|
jaroslav@257
|
89 |
|
jaroslav@257
|
90 |
void writeProperties(java.util.Properties p) {
|
jaroslav@257
|
91 |
// better to version settings since initial version as advocated at
|
jaroslav@257
|
92 |
// http://wiki.apidesign.org/wiki/PropertyFiles
|
jaroslav@257
|
93 |
p.setProperty("version", "1.0");
|
jaroslav@260
|
94 |
if (id != null) {
|
jaroslav@260
|
95 |
p.setProperty("id", id);
|
jaroslav@260
|
96 |
}
|
jaroslav@257
|
97 |
}
|
jaroslav@257
|
98 |
|
jaroslav@257
|
99 |
final void readProperties(java.util.Properties p) {
|
jaroslav@257
|
100 |
String version = p.getProperty("version");
|
jaroslav@260
|
101 |
String myId = p.getProperty("id");
|
jaroslav@260
|
102 |
if (myId != null) {
|
jaroslav@260
|
103 |
setGameId(myId);
|
jaroslav@260
|
104 |
}
|
jaroslav@257
|
105 |
}
|
jaroslav@257
|
106 |
|
jaroslav@257
|
107 |
@Override
|
jaroslav@257
|
108 |
protected String preferredID() {
|
jaroslav@257
|
109 |
return PREFERRED_ID;
|
jaroslav@257
|
110 |
}
|
jaroslav@257
|
111 |
}
|