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