File was renamed from src/net/jacekk/brydz/android/MainActivity.java |
| | |
| | | package net.jacekk.brydz.android; |
| | | package net.jacekk.bridge.android; |
| | | |
| | | import android.app.Activity; |
| | | import android.os.Bundle; |
| | |
| | | import android.widget.SeekBar; |
| | | import android.widget.TextView; |
| | | import android.widget.ToggleButton; |
| | | import net.jacekk.brydz.BridgeCompute; |
| | | import net.jacekk.brydz.BridgeResult; |
| | | |
| | | import net.jacekk.bridge.R; |
| | | import net.jacekk.bridge.BridgeCompute; |
| | | import net.jacekk.bridge.BridgeResult; |
| | | |
| | | public class MainActivity extends Activity { |
| | | private SeekBar BidSlider; |
| | | private TextView BidText; |
| | | |
| | | private ToggleButton CDToggle; |
| | | private ToggleButton HSToggle; |
| | | private ToggleButton NTToggle; |
| | | private ToggleButton MinorSuitsToggle; |
| | | private ToggleButton MajorSuitsToggle; |
| | | private ToggleButton NoTrumpToggle; |
| | | |
| | | private ToggleButton NormToggle; |
| | | private ToggleButton DblToggle; |
| | | private ToggleButton ReDblToggle; |
| | | private ToggleButton ContractToggle; |
| | | private ToggleButton DoubleToggle; |
| | | private ToggleButton RedoubleToggle; |
| | | |
| | | private ToggleButton BBToggle; |
| | | private ToggleButton BAToggle; |
| | | private ToggleButton ABToggle; |
| | | private ToggleButton AAToggle; |
| | | private ToggleButton NNToggle; |
| | | private ToggleButton NVToggle; |
| | | private ToggleButton VNToggle; |
| | | private ToggleButton VVToggle; |
| | | |
| | | private EditText PCInput; |
| | | private EditText TricksInput; |
| | |
| | | BidSlider = (SeekBar) findViewById(R.id.BidSlider); |
| | | BidText = (TextView) findViewById(R.id.BidText); |
| | | |
| | | CDToggle = (ToggleButton) findViewById(R.id.CDToggle); |
| | | HSToggle = (ToggleButton) findViewById(R.id.HSToggle); |
| | | NTToggle = (ToggleButton) findViewById(R.id.NTToggle); |
| | | MinorSuitsToggle = (ToggleButton) findViewById(R.id.MinorSuitsToggle); |
| | | MajorSuitsToggle = (ToggleButton) findViewById(R.id.MajorSuitsToggle); |
| | | NoTrumpToggle = (ToggleButton) findViewById(R.id.NoTrumpToggle); |
| | | |
| | | NormToggle = (ToggleButton) findViewById(R.id.NormToggle); |
| | | DblToggle = (ToggleButton) findViewById(R.id.DblToggle); |
| | | ReDblToggle = (ToggleButton) findViewById(R.id.ReDblToggle); |
| | | ContractToggle = (ToggleButton) findViewById(R.id.ContractToggle); |
| | | DoubleToggle = (ToggleButton) findViewById(R.id.DoubleToggle); |
| | | RedoubleToggle = (ToggleButton) findViewById(R.id.RedoubleToggle); |
| | | |
| | | BBToggle = (ToggleButton) findViewById(R.id.BBToggle); |
| | | BAToggle = (ToggleButton) findViewById(R.id.BAToggle); |
| | | ABToggle = (ToggleButton) findViewById(R.id.ABToggle); |
| | | AAToggle = (ToggleButton) findViewById(R.id.AAToggle); |
| | | NNToggle = (ToggleButton) findViewById(R.id.NNToggle); |
| | | NVToggle = (ToggleButton) findViewById(R.id.NVToggle); |
| | | VNToggle = (ToggleButton) findViewById(R.id.VNToggle); |
| | | VVToggle = (ToggleButton) findViewById(R.id.VVToggle); |
| | | |
| | | PCInput = (EditText) findViewById(R.id.PCInput); |
| | | TricksInput = (EditText) findViewById(R.id.TricksInput); |
| | | |
| | | resultText = (TextView) findViewById(R.id.resultText); |
| | | resultText = (TextView) findViewById(R.id.ResultsText); |
| | | |
| | | BidSlider.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { |
| | | @Override |
| | |
| | | public void onClick(View view) { |
| | | ToggleButton toggle = (ToggleButton) view; |
| | | |
| | | if (!toggle.equals(CDToggle)) |
| | | CDToggle.setChecked(false); |
| | | if (!toggle.equals(HSToggle)) |
| | | HSToggle.setChecked(false); |
| | | if (!toggle.equals(NTToggle)) |
| | | NTToggle.setChecked(false); |
| | | if (!toggle.equals(MinorSuitsToggle)) |
| | | MinorSuitsToggle.setChecked(false); |
| | | if (!toggle.equals(MajorSuitsToggle)) |
| | | MajorSuitsToggle.setChecked(false); |
| | | if (!toggle.equals(NoTrumpToggle)) |
| | | NoTrumpToggle.setChecked(false); |
| | | |
| | | updateResults(); |
| | | } |
| | | }; |
| | | |
| | | CDToggle.setOnClickListener(colorClickListener); |
| | | HSToggle.setOnClickListener(colorClickListener); |
| | | NTToggle.setOnClickListener(colorClickListener); |
| | | MinorSuitsToggle.setOnClickListener(colorClickListener); |
| | | MajorSuitsToggle.setOnClickListener(colorClickListener); |
| | | NoTrumpToggle.setOnClickListener(colorClickListener); |
| | | |
| | | ToggleButton.OnClickListener bidClickListener = new ToggleButton.OnClickListener() { |
| | | @Override |
| | | public void onClick(View view) { |
| | | ToggleButton toggle = (ToggleButton) view; |
| | | |
| | | if (!toggle.equals(NormToggle)) |
| | | NormToggle.setChecked(false); |
| | | if (!toggle.equals(DblToggle)) |
| | | DblToggle.setChecked(false); |
| | | if (!toggle.equals(ReDblToggle)) |
| | | ReDblToggle.setChecked(false); |
| | | if (!toggle.equals(ContractToggle)) |
| | | ContractToggle.setChecked(false); |
| | | if (!toggle.equals(DoubleToggle)) |
| | | DoubleToggle.setChecked(false); |
| | | if (!toggle.equals(RedoubleToggle)) |
| | | RedoubleToggle.setChecked(false); |
| | | |
| | | updateResults(); |
| | | } |
| | | }; |
| | | |
| | | NormToggle.setOnClickListener(bidClickListener); |
| | | DblToggle.setOnClickListener(bidClickListener); |
| | | ReDblToggle.setOnClickListener(bidClickListener); |
| | | ContractToggle.setOnClickListener(bidClickListener); |
| | | DoubleToggle.setOnClickListener(bidClickListener); |
| | | RedoubleToggle.setOnClickListener(bidClickListener); |
| | | |
| | | ToggleButton.OnClickListener baClickListener = new ToggleButton.OnClickListener() { |
| | | public void onClick(View view) { |
| | | ToggleButton toggle = (ToggleButton) view; |
| | | |
| | | if (!toggle.equals(AAToggle)) |
| | | AAToggle.setChecked(false); |
| | | if (!toggle.equals(ABToggle)) |
| | | ABToggle.setChecked(false); |
| | | if (!toggle.equals(BAToggle)) |
| | | BAToggle.setChecked(false); |
| | | if (!toggle.equals(BBToggle)) |
| | | BBToggle.setChecked(false); |
| | | if (!toggle.equals(VVToggle)) |
| | | VVToggle.setChecked(false); |
| | | if (!toggle.equals(VNToggle)) |
| | | VNToggle.setChecked(false); |
| | | if (!toggle.equals(NVToggle)) |
| | | NVToggle.setChecked(false); |
| | | if (!toggle.equals(NNToggle)) |
| | | NNToggle.setChecked(false); |
| | | |
| | | updateResults(); |
| | | } |
| | | }; |
| | | |
| | | AAToggle.setOnClickListener(baClickListener); |
| | | ABToggle.setOnClickListener(baClickListener); |
| | | BAToggle.setOnClickListener(baClickListener); |
| | | BBToggle.setOnClickListener(baClickListener); |
| | | VVToggle.setOnClickListener(baClickListener); |
| | | VNToggle.setOnClickListener(baClickListener); |
| | | NVToggle.setOnClickListener(baClickListener); |
| | | NNToggle.setOnClickListener(baClickListener); |
| | | |
| | | PCInput.addTextChangedListener( |
| | | new TextWatcher() { |
| | |
| | | int bid = BidSlider.getProgress(); |
| | | |
| | | int color = 0; |
| | | if (HSToggle.isChecked()) |
| | | if (MajorSuitsToggle.isChecked()) |
| | | color = 1; |
| | | if (NTToggle.isChecked()) |
| | | if (NoTrumpToggle.isChecked()) |
| | | color = 2; |
| | | |
| | | int dbl = 0; |
| | | if (DblToggle.isChecked()) |
| | | if (DoubleToggle.isChecked()) |
| | | dbl = 1; |
| | | if (ReDblToggle.isChecked()) |
| | | if (RedoubleToggle.isChecked()) |
| | | dbl = 2; |
| | | |
| | | int baba = 0; |
| | | if (BAToggle.isChecked()) |
| | | baba = 1; |
| | | if (ABToggle.isChecked()) |
| | | baba = 2; |
| | | if (AAToggle.isChecked()) |
| | | baba = 3; |
| | | int vulnerability = 0; |
| | | if (NVToggle.isChecked()) |
| | | vulnerability = 1; |
| | | if (VNToggle.isChecked()) |
| | | vulnerability = 2; |
| | | if (VVToggle.isChecked()) |
| | | vulnerability = 3; |
| | | |
| | | int PC = -1; |
| | | try { |
| | | PC = Integer.parseInt(PCInput.getText().toString()); |
| | | } catch (NumberFormatException e) { |
| | | } catch (NumberFormatException ignored) { |
| | | } |
| | | |
| | | int tricks = -1; |
| | | try { |
| | | tricks = Integer.parseInt(TricksInput.getText().toString()); |
| | | } catch (NumberFormatException e) { |
| | | } catch (NumberFormatException ignored) { |
| | | } |
| | | |
| | | if (bid < 0 || bid > 7) { |
| | |
| | | return; |
| | | } |
| | | |
| | | if (baba < 0 || baba > 3) { |
| | | if (vulnerability < 0 || vulnerability > 3) { |
| | | resultText.setText(getString(R.string.invalid_baba)); |
| | | return; |
| | | } |
| | |
| | | return; |
| | | } |
| | | |
| | | BridgeResult result = bridgeCompute.compute(bid, color, dbl, baba, PC, tricks); |
| | | BridgeResult result = bridgeCompute.compute(bid, color, dbl, vulnerability, PC, tricks); |
| | | resultText.setText( |
| | | (result.pointsFor == BridgeResult.PointsFor.Us ? getString(R.string.result_for_us) : getString(R.string.result_for_them)) + |
| | | "\n" + getString(R.string.result_pts_wo_pc) + " " + result.pointsBefore + |