New file |
| | |
| | | package brydz; |
| | | |
| | | import javax.microedition.lcdui.*; |
| | | |
| | | public class BrydzMenu extends List implements CommandListener { |
| | | protected BrydzMIDlet midlet; |
| | | protected BrydzForm form; |
| | | protected Form text; |
| | | |
| | | public BrydzMenu(BrydzMIDlet midlet, BrydzForm previous) { |
| | | super("Menu", List.IMPLICIT); |
| | | |
| | | this.midlet = midlet; |
| | | this.form = previous; |
| | | |
| | | this.text = new Form("Obliczenia brydżowe"); |
| | | this.text.addCommand(new Command("Powrót", Command.BACK, 1)); |
| | | this.text.addCommand(new Command("Menu", Command.OK, 1)); |
| | | this.text.setCommandListener(this); |
| | | |
| | | this.append("Pomoc", null); |
| | | this.append("Autor", null); |
| | | this.append("Wyjście", null); |
| | | this.addCommand(new Command("Powrót", Command.BACK, 1)); |
| | | this.setSelectCommand(new Command("Wybierz", Command.ITEM, 1)); |
| | | this.setCommandListener(this); |
| | | |
| | | this.midlet.display.setCurrent(this); |
| | | } |
| | | |
| | | public void commandAction(Command command, Displayable displayable) { |
| | | switch(command.getCommandType()) { |
| | | case Command.OK: |
| | | this.midlet.display.setCurrent(this); |
| | | break; |
| | | case Command.BACK: |
| | | this.midlet.display.setCurrent(this.form); |
| | | break; |
| | | case Command.ITEM: |
| | | switch(this.getSelectedIndex()) { |
| | | case 0: |
| | | this.text.deleteAll(); |
| | | this.text.append(new StringItem("O programie", "MIDlet ten ma za zadanie ułatwić obliczanie zapisu brydżowego przy towarzyskim graniu w brydża sportowego.")); |
| | | this.text.append(new StringItem("Kontrakt", "Należy podać wysokość wylicytowanego kontraktu lub 0 przy czterech pasach")); |
| | | this.text.append(new StringItem("Kolor", "Trzeba wybrać z listy wylicytowany kolor (młodszy/starszy/bez atu) - w przypadku pasów nie ma to znaczenia.")); |
| | | this.text.append(new StringItem("Kontra", "Jeśli przeciwnicy dawali kontrę lub rozgrywający dodatkowo rekontrował - należy zaznaczyć odpowiednie pole.")); |
| | | this.text.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.text.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.text.append(new StringItem("Lew", "Ilość lew wziętych przez rozgrywającego - w przypadku pasów nie ma znaczenia.")); |
| | | this.text.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 uzyskanych IMP-ów oraz uzyskanym procencie, zgodnie z zapisem maksowym p. Adama Królika.")); |
| | | this.midlet.display.setCurrent(this.text); |
| | | break; |
| | | case 1: |
| | | this.text.deleteAll(); |
| | | this.text.append("Autor: Jacek Kowalski\nhttp://dev.jacekk.net/brydz"); |
| | | this.midlet.display.setCurrent(this.text); |
| | | break; |
| | | case 2: |
| | | this.midlet.destroyApp(true); |
| | | break; |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | } |