Obliczenia brydżowe (Java ME)
Jacek Kowalski
2012-08-08 fb3d21dd264151dce808d7698ee0d8a28d6f227e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package brydz;
 
import javax.microedition.lcdui.*;
 
public class BrydzPomocForm extends Form implements CommandListener {
    protected BrydzMIDlet midlet;
    protected BrydzForm form;
    
    public BrydzPomocForm(BrydzMIDlet midlet, BrydzForm previous, boolean about) {
        super("");
        
        this.midlet = midlet;
        this.form = previous;
        
        if(about) {
            this.setTitle("O programie");
            this.append(new StringItem("Program:", "Obliczenia brydżowe"));
            this.append(new StringItem("Wersja:", this.midlet.version));
            this.append(new StringItem("Autor:", "Jacek Kowalski"));
            this.append(new StringItem("Strona WWW:", "http://dev.jacekk.net/brydz", StringItem.HYPERLINK));
        }
        else
        {
            this.setTitle("Pomoc");
            
            this.append(new StringItem("Informacje:", "MIDlet ten ma za zadanie"
                    + " ułatwić obliczanie zapisu brydżowego przy towarzyskim"
                    + " graniu w brydża sportowego."));
            this.append(new StringItem("Kontrakt:", "Należy podać wysokość"
                    + " wylicytowanego kontraktu lub 0 przy czterech pasach"));
            this.append(new StringItem("Kolor:", "Trzeba wybrać z listy"
                    + " wylicytowany kolor (młodszy/starszy/bez atu) - w przypadku"
                    + " czterech pasów nie ma to znaczenia."));
            this.append(new StringItem("Kontra:", "Jeśli przeciwnicy dawali kontrę"
                    + " lub rozgrywający dodatkowo rekontrował - należy zaznaczyć"
                    + " odpowiednie pole."));
            this.append(new StringItem("Przed/po partii:", "Część przed znakiem"
                    + " \"/\" dotyczy rozgrywających, zaś część druga -"
                    + " przeciwników. W przypadku czterech pasów - pierwsza dotyczy"
                    + " pary z większą liczbą punktów."));
            this.append(new StringItem("PC:", "Liczba punktów honorowych (punktów"
                    + " Miltona Worka) pary, która wylicytowała kontrakt."
                    + " W przypadku pasów - suma punktów pary z większą ich ilością."));
            this.append(new StringItem("Lew:", "Ilość lew wziętych przez"
                    + " rozgrywającego - w przypadku pasów nie ma znaczenia."));
            this.append(new StringItem("Wynik:", "Przekazywana jest informacja"
                    + " o stronie, która uzyskała zapis, liczbie punktów bez i z"
                    + " uwzględnieniem ilości PC, ilości IMP-ów oraz uzyskanym"
                    + " procencie, zgodnie z zapisem maksowym p. Adama Królika."));
        }
        
        this.addCommand(new Command("Powrót", Command.BACK, 2));
        this.setCommandListener(this);
    }
    
    public void commandAction(Command command, Displayable displayable) {
        if(command.getCommandType() == Command.BACK) {
            this.midlet.display.setCurrent(this.form);
        }
    }
}