| <manifest xmlns:android="http://schemas.android.com/apk/res/android" | <manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||||
| package="ch.spherIC.recurvebowsight" | package="ch.spherIC.recurvebowsight" | ||||
| android:versionCode="1" | android:versionCode="1" | ||||
| android:versionName="0.9.0" > | |||||
| android:versionName="1.0.2" > | |||||
| <uses-sdk | <uses-sdk | ||||
| android:minSdkVersion="10" | android:minSdkVersion="10" |
| android:inputType="numberSigned|numberDecimal" | android:inputType="numberSigned|numberDecimal" | ||||
| android:paddingBottom="9dp" | android:paddingBottom="9dp" | ||||
| android:paddingTop="9dp" | android:paddingTop="9dp" | ||||
| android:selectAllOnFocus="true" | |||||
| android:textSize="18sp" | android:textSize="18sp" | ||||
| android:visibility="invisible" | android:visibility="invisible" | ||||
| android:selectAllOnFocus="true" | |||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | app:txtFont="@string/TitilliumWeb_Regular" /> | ||||
| </LinearLayout> | </LinearLayout> | ||||
| </TableRow> | </TableRow> | ||||
| android:ems="10" | android:ems="10" | ||||
| android:gravity="center_vertical" | android:gravity="center_vertical" | ||||
| android:inputType="numberSigned|numberDecimal" | android:inputType="numberSigned|numberDecimal" | ||||
| android:nextFocusDown="@+id/scaHTxtFld" | |||||
| android:paddingBottom="9dp" | android:paddingBottom="9dp" | ||||
| android:paddingTop="9dp" | android:paddingTop="9dp" | ||||
| android:textSize="18sp" | |||||
| android:nextFocusDown="@+id/scaHTxtFld" | |||||
| android:selectAllOnFocus="true" | android:selectAllOnFocus="true" | ||||
| android:textSize="18sp" | |||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | app:txtFont="@string/TitilliumWeb_Regular" /> | ||||
| <ch.spherIC.recurvebowsight.components.FontEditText | <ch.spherIC.recurvebowsight.components.FontEditText | ||||
| android:ems="10" | android:ems="10" | ||||
| android:gravity="center_vertical" | android:gravity="center_vertical" | ||||
| android:inputType="numberSigned|numberDecimal" | android:inputType="numberSigned|numberDecimal" | ||||
| android:nextFocusDown="@+id/scVertScaleRngTxtFld" | |||||
| android:paddingBottom="9dp" | android:paddingBottom="9dp" | ||||
| android:paddingTop="9dp" | android:paddingTop="9dp" | ||||
| android:textSize="18sp" | |||||
| android:nextFocusDown="@+id/scVertScaleRngTxtFld" | |||||
| android:selectAllOnFocus="true" | android:selectAllOnFocus="true" | ||||
| android:textSize="18sp" | |||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | app:txtFont="@string/TitilliumWeb_Regular" /> | ||||
| </TableRow> | </TableRow> | ||||
| android:inputType="numberSigned|numberDecimal" | android:inputType="numberSigned|numberDecimal" | ||||
| android:paddingBottom="9dp" | android:paddingBottom="9dp" | ||||
| android:paddingTop="9dp" | android:paddingTop="9dp" | ||||
| android:selectAllOnFocus="true" | |||||
| android:textSize="18sp" | android:textSize="18sp" | ||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | |||||
| <ch.spherIC.recurvebowsight.components.FontEditText | |||||
| android:id="@+id/scPointerOffsetCalcTxtFld" | |||||
| android:layout_width="wrap_content" | |||||
| android:layout_height="40dp" | |||||
| android:layout_marginLeft="4dp" | |||||
| android:layout_weight="1" | |||||
| android:ems="10" | |||||
| android:gravity="center_vertical" | |||||
| android:inputType="numberSigned|numberDecimal" | |||||
| android:paddingBottom="9dp" | |||||
| android:paddingTop="9dp" | |||||
| android:selectAllOnFocus="true" | android:selectAllOnFocus="true" | ||||
| android:textSize="18sp" | |||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | app:txtFont="@string/TitilliumWeb_Regular" /> | ||||
| </TableRow> | </TableRow> | ||||
| android:ems="10" | android:ems="10" | ||||
| android:gravity="center_vertical" | android:gravity="center_vertical" | ||||
| android:inputType="numberSigned|numberDecimal" | android:inputType="numberSigned|numberDecimal" | ||||
| android:nextFocusDown="@+id/scVvisHTxtFld" | |||||
| android:paddingBottom="9dp" | android:paddingBottom="9dp" | ||||
| android:paddingTop="9dp" | android:paddingTop="9dp" | ||||
| android:textSize="18sp" | |||||
| android:nextFocusDown="@+id/scVvisHTxtFld" | |||||
| android:selectAllOnFocus="true" | android:selectAllOnFocus="true" | ||||
| app:txtFont="@string/TitilliumWeb_Regular" > | |||||
| <requestFocus /> | |||||
| </ch.spherIC.recurvebowsight.components.FontEditText> | |||||
| android:textSize="18sp" | |||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | |||||
| </TableRow> | </TableRow> | ||||
| <TableRow | <TableRow |
| android:ems="10" | android:ems="10" | ||||
| android:gravity="center_vertical" | android:gravity="center_vertical" | ||||
| android:inputType="numberSigned|numberDecimal" | android:inputType="numberSigned|numberDecimal" | ||||
| android:nextFocusDown="@+id/scManufacturerTxtFld" | |||||
| android:nextFocusDown="@id/scPointerOffsetCalcTxtFld" | |||||
| android:paddingBottom="9dp" | android:paddingBottom="9dp" | ||||
| android:paddingTop="9dp" | android:paddingTop="9dp" | ||||
| android:selectAllOnFocus="true" | android:selectAllOnFocus="true" | ||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | app:txtFont="@string/TitilliumWeb_Regular" /> | ||||
| </TableRow> | </TableRow> | ||||
| <TableRow | |||||
| android:id="@+id/tableSCCRow8" | |||||
| android:layout_width="match_parent" | |||||
| android:layout_height="wrap_content" | |||||
| android:layout_gravity="center" | |||||
| android:layout_margin="4dp" > | |||||
| <ch.spherIC.recurvebowsight.components.FontTextView | |||||
| android:id="@+id/scPointerOffsetLbl" | |||||
| android:layout_width="fill_parent" | |||||
| android:layout_height="wrap_content" | |||||
| android:layout_gravity="right|center_vertical" | |||||
| android:text="@string/scPointerOffsetLbl" | |||||
| android:textColor="@color/black" | |||||
| app:font="@string/TitilliumWeb_Regular" /> | |||||
| <ch.spherIC.recurvebowsight.components.FontEditText | |||||
| android:id="@+id/scPointerOffsetTxtFld" | |||||
| android:layout_width="wrap_content" | |||||
| android:layout_height="40dp" | |||||
| android:layout_marginLeft="4dp" | |||||
| android:layout_weight="1" | |||||
| android:ems="10" | |||||
| android:gravity="center_vertical" | |||||
| android:inputType="numberSigned|numberDecimal" | |||||
| android:nextFocusDown="@+id/scManufacturerTxtFld" | |||||
| android:paddingBottom="9dp" | |||||
| android:paddingTop="9dp" | |||||
| android:selectAllOnFocus="true" | |||||
| android:textSize="18sp" | |||||
| app:txtFont="@string/TitilliumWeb_Regular" /> | |||||
| </TableRow> | |||||
| </TableLayout> | </TableLayout> | ||||
| <LinearLayout | <LinearLayout |
| <string name="scSightLbl">Visier</string> | <string name="scSightLbl">Visier</string> | ||||
| <string name="scHeVSLbl">Horz. Einst. Visierschlitten [mm]</string> | <string name="scHeVSLbl">Horz. Einst. Visierschlitten [mm]</string> | ||||
| <string name="scaVLbl">aV [mm] / aH [mm]</string> | <string name="scaVLbl">aV [mm] / aH [mm]</string> | ||||
| <string name="scVertScaleRngLbl">Bereich vert. Skala [mm]</string> | |||||
| <string name="scVertScaleRngLbl">Bereich vert. Skala / Skalaversatz [mm]</string> | |||||
| <string name="scVertScaleRngMinLbl">Min. Bereich vert. Skala [mm]</string> | <string name="scVertScaleRngMinLbl">Min. Bereich vert. Skala [mm]</string> | ||||
| <string name="scVertScaleRngMaxLbl">Max. Bereich vert. Skala [mm]</string> | <string name="scVertScaleRngMaxLbl">Max. Bereich vert. Skala [mm]</string> | ||||
| <string name="scVertSkalaMiddleLbl">Mittelstellung M vert. Skala [mm]</string> | <string name="scVertSkalaMiddleLbl">Mittelstellung M vert. Skala [mm]</string> | ||||
| <string name="scPointerOffsetLbl">Versatz Skalenzeiger [mm]</string> | |||||
| <string name="scEvSLbl">EvS [mm]</string> | <string name="scEvSLbl">EvS [mm]</string> | ||||
| <!-- --> | <!-- --> | ||||
| <string name="menuAbout">Über RBS…</string> | <string name="menuAbout">Über RBS…</string> |
| <string name="scVertScaleRngMinLbl">Vert. Scale Range Min. [mm]</string> | <string name="scVertScaleRngMinLbl">Vert. Scale Range Min. [mm]</string> | ||||
| <string name="scVertScaleRngMaxLbl">Vert. Scale Range Max. [mm]</string> | <string name="scVertScaleRngMaxLbl">Vert. Scale Range Max. [mm]</string> | ||||
| <string name="scVertSkalaMiddleLbl">Vert. Scale Middle Setting M [mm]</string> | <string name="scVertSkalaMiddleLbl">Vert. Scale Middle Setting M [mm]</string> | ||||
| <string name="scPointerOffsetLbl">Scale Pointer Offset [mm]</string> | |||||
| <string name="scEvSLbl">EvS [mm]</string> | <string name="scEvSLbl">EvS [mm]</string> | ||||
| <!-- --> | <!-- --> | ||||
| <string name="menuAbout">About RBS…</string> | <string name="menuAbout">About RBS…</string> |
| </string-array> | </string-array> | ||||
| <string name="caption_UserguideParams"><b>1. %1$s\n2. %2$s\n3. %3$s\n4. %4$s\n5. %5$s\n6. %6$s\n7. %7$s\n\n%8$s</b>\n%9$s\n\n<b>%10$s</b>\n%11$s</string> | <string name="caption_UserguideParams"><b>1. %1$s\n2. %2$s\n3. %3$s\n4. %4$s\n5. %5$s\n6. %6$s\n7. %7$s\n\n%8$s</b>\n%9$s\n\n<b>%10$s</b>\n%11$s</string> | ||||
| <string name="caption_UserguideParams2"><b>1. %1$s</b>\n\n<b>2. %2$s</b>\n%3$s\n\n<b>3. %4$s</b>\n%5$s\n\n<b>4. %6$s</b>\n\n<b>5. %7$s</b>\n\n<b>6. %8$s</b>\n\n<b>7. %9$s</b>\n\n<b>8. %10$s</b>\n\n<b>9. %11$s</b>\n%12$s</string> | |||||
| <string name="caption_UserguideParams2"><b>1. %1$s</b>\n\n<b>2. %2$s</b>\n%3$s\n\n<b>3. %4$s</b>\n%5$s\n\n<b>4. %6$s</b>\n\n<b>5. %7$s</b>\n\n<b>6. %8$s</b>\n\n<b>7. %9$s</b>\n\n<b>8. %10$s</b>\n\n<b>9. %11$s</b>\n%12$s\n\n<b>10. %13$s</b></string> | |||||
| <string name="caption_UserguideRiserParams"><b>1. %1$s</b>\n\n<b>2. %2$s</b>\n%3$s\n\n<b>4. %4$s</b>\n\n<b>5. %5$s</b>\n\n%6$s</string> | <string name="caption_UserguideRiserParams"><b>1. %1$s</b>\n\n<b>2. %2$s</b>\n%3$s\n\n<b>4. %4$s</b>\n\n<b>5. %5$s</b>\n\n%6$s</string> | ||||
| <string name="caption_UserguideSightParams"><b>1. %1$s</b>\n\n<b>2. %2$s</b>\n%3$s\n\n<b>3. %4$s</b>\n%5$s\n\n<b>4. %6$s</b>\n\n<b>5. %7$s</b>\n\n<b>6. %8$s</b>\n\n<b>7. %9$s</b>\n\n%10$s</string> | |||||
| <string name="caption_UserguideSightParams"><b>1. %1$s</b>\n\n<b>2. %2$s</b>\n%3$s\n\n<b>3. %4$s</b>\n%5$s\n\n<b>4. %6$s</b>\n\n<b>5. %7$s</b>\n\n<b>6. %8$s</b>\n\n<b>7. %9$s</b>\n\n<b>8. %10$s</b>%11$s</string> | |||||
| <string name="caption_UserguideArcherySetupParams">%1$s\n\n%2$s\n\n%3$s\n\n%4$s\n\n%5$s\n\n%6$s\n\n%7$s\n\n%8$s</string> | <string name="caption_UserguideArcherySetupParams">%1$s\n\n%2$s\n\n%3$s\n\n%4$s\n\n%5$s\n\n%6$s\n\n%7$s\n\n%8$s</string> | ||||
| </resources> | </resources> |
| parent.getResources().getString(R.string.scVertSkalaMiddleLbl), | parent.getResources().getString(R.string.scVertSkalaMiddleLbl), | ||||
| parent.getResources().getString(R.string.scEvSLbl), parent.getResources().getString(R.string.rcVvisVLbl), // | parent.getResources().getString(R.string.scEvSLbl), parent.getResources().getString(R.string.rcVvisVLbl), // | ||||
| parent.getResources().getString(R.string.rcVvisHLbl), // | parent.getResources().getString(R.string.rcVvisHLbl), // | ||||
| parent.getResources().getString(R.string.ug_UserguideRiserParams_Add1)).replaceAll("\n", "<br>"); | |||||
| parent.getResources().getString(R.string.ug_UserguideRiserParams_Add1), | |||||
| parent.getResources().getString(R.string.scPointerOffsetLbl)).replaceAll("\n", "<br>"); | |||||
| text.setText(Html.fromHtml(html)); | text.setText(Html.fromHtml(html)); | ||||
| ((Button) dialog.findViewById(R.id.btn_ugClose)).setOnClickListener(new OnClickListener() { | ((Button) dialog.findViewById(R.id.btn_ugClose)).setOnClickListener(new OnClickListener() { | ||||
| parent.getResources().getString(R.string.scVertScaleRngMinLbl), | parent.getResources().getString(R.string.scVertScaleRngMinLbl), | ||||
| parent.getResources().getString(R.string.scVertScaleRngMaxLbl), | parent.getResources().getString(R.string.scVertScaleRngMaxLbl), | ||||
| parent.getResources().getString(R.string.scVertSkalaMiddleLbl), | parent.getResources().getString(R.string.scVertSkalaMiddleLbl), | ||||
| parent.getResources().getString(R.string.scEvSLbl), createButtonsGuideString(parent, true)).replaceAll("\n", | |||||
| "<br>"); | |||||
| parent.getResources().getString(R.string.scPointerOffsetLbl), parent.getResources().getString(R.string.scEvSLbl), | |||||
| createButtonsGuideString(parent, true)).replaceAll("\n", "<br>"); | |||||
| text.setText(Html.fromHtml(html)); | text.setText(Html.fromHtml(html)); | ||||
| ((Button) dialog.findViewById(R.id.btn_ugClose)).setOnClickListener(new OnClickListener() { | ((Button) dialog.findViewById(R.id.btn_ugClose)).setOnClickListener(new OnClickListener() { |
| private TextView scaVTxtFld; | private TextView scaVTxtFld; | ||||
| private TextView scaHTxtFld; | private TextView scaHTxtFld; | ||||
| private TextView scVertScaleRngTxtFld; | private TextView scVertScaleRngTxtFld; | ||||
| private TextView scPointerOffsetTxtFld; | |||||
| private TextView scVertScaleMiddleTxtFld; | private TextView scVertScaleMiddleTxtFld; | ||||
| private FontTextView scEvSValue; | private FontTextView scEvSValue; | ||||
| private Button calcSettingBtn; | private Button calcSettingBtn; | ||||
| private void loadSightSpinner() { | private void loadSightSpinner() { | ||||
| ISight selectedSight = this.scSightSpinner.getSelectedSight(); | ISight selectedSight = this.scSightSpinner.getSelectedSight(); | ||||
| List<ISight> sights = SightDao.getInstance().loadAll(); | List<ISight> sights = SightDao.getInstance().loadAll(); | ||||
| sights.add(0, new Sight(-999, getResources().getString(R.string.caption_NoSelection), "", null, null, "", null, null)); | |||||
| sights.add(0, new Sight(-999, getResources().getString(R.string.caption_NoSelection), "", null, null, "", null, null, null)); | |||||
| this.scSightSpinner.setAdapter(new FontArrayAdapter<ISight>(this, R.layout.rbs_spinner, sights, this.scSightSpinner)); | this.scSightSpinner.setAdapter(new FontArrayAdapter<ISight>(this, R.layout.rbs_spinner, sights, this.scSightSpinner)); | ||||
| if (selectedSight != null) { | if (selectedSight != null) { | ||||
| this.scSightSpinner.setSelectedSight(selectedSight); | this.scSightSpinner.setSelectedSight(selectedSight); | ||||
| this.scaVTxtFld = (TextView) findViewById(R.id.scaVTxtFld); | this.scaVTxtFld = (TextView) findViewById(R.id.scaVTxtFld); | ||||
| this.scaHTxtFld = (TextView) findViewById(R.id.scaHTxtFld); | this.scaHTxtFld = (TextView) findViewById(R.id.scaHTxtFld); | ||||
| this.scVertScaleRngTxtFld = (TextView) findViewById(R.id.scVertScaleRngTxtFld); | this.scVertScaleRngTxtFld = (TextView) findViewById(R.id.scVertScaleRngTxtFld); | ||||
| this.scPointerOffsetTxtFld = (TextView) findViewById(R.id.scPointerOffsetCalcTxtFld); | |||||
| this.scVertScaleMiddleTxtFld = (TextView) findViewById(R.id.scVertSkalaMiddleTxtFld); | this.scVertScaleMiddleTxtFld = (TextView) findViewById(R.id.scVertSkalaMiddleTxtFld); | ||||
| this.scEvSValue = (FontTextView) findViewById(R.id.scEvSValue); | this.scEvSValue = (FontTextView) findViewById(R.id.scEvSValue); | ||||
| RBSMainActivity.this.scaHTxtFld.setText(DF.format(sight.getAH())); | RBSMainActivity.this.scaHTxtFld.setText(DF.format(sight.getAH())); | ||||
| RBSMainActivity.this.scVertScaleRngTxtFld.setText(DF.format(sight.getVertSkalaRangeMin()) + "-" | RBSMainActivity.this.scVertScaleRngTxtFld.setText(DF.format(sight.getVertSkalaRangeMin()) + "-" | ||||
| + DF.format(sight.getVertSkalaRangeMax())); | + DF.format(sight.getVertSkalaRangeMax())); | ||||
| RBSMainActivity.this.scPointerOffsetTxtFld.setText(DF.format(sight.getPointerOffset())); | |||||
| } else { | } else { | ||||
| RBSMainActivity.this.scHeVSSpinner.setVisibility(View.INVISIBLE); | RBSMainActivity.this.scHeVSSpinner.setVisibility(View.INVISIBLE); | ||||
| RBSMainActivity.this.scHeVSSpinner.setLayoutParams(new LinearLayout.LayoutParams(RBSMainActivity.this.scHeVSSpinner | RBSMainActivity.this.scHeVSSpinner.setLayoutParams(new LinearLayout.LayoutParams(RBSMainActivity.this.scHeVSSpinner | ||||
| RBSMainActivity.this.scaVTxtFld.setText(""); | RBSMainActivity.this.scaVTxtFld.setText(""); | ||||
| RBSMainActivity.this.scaHTxtFld.setText(""); | RBSMainActivity.this.scaHTxtFld.setText(""); | ||||
| RBSMainActivity.this.scVertScaleRngTxtFld.setText(""); | RBSMainActivity.this.scVertScaleRngTxtFld.setText(""); | ||||
| RBSMainActivity.this.scPointerOffsetTxtFld.setText(""); | |||||
| } | } | ||||
| RBSMainActivity.this.scaVTxtFld.setEnabled(sight.getId() == -999); | RBSMainActivity.this.scaVTxtFld.setEnabled(sight.getId() == -999); | ||||
| RBSMainActivity.this.scaHTxtFld.setEnabled(sight.getId() == -999); | RBSMainActivity.this.scaHTxtFld.setEnabled(sight.getId() == -999); | ||||
| RBSMainActivity.this.scVertScaleRngTxtFld.setEnabled(sight.getId() == -999); | RBSMainActivity.this.scVertScaleRngTxtFld.setEnabled(sight.getId() == -999); | ||||
| RBSMainActivity.this.scPointerOffsetTxtFld.setEnabled(sight.getId() == -999); | |||||
| } | } | ||||
| @Override | @Override | ||||
| }); | }); | ||||
| return true; | return true; | ||||
| case R.id.itemAbout: | case R.id.itemAbout: | ||||
| && !this.scaHTxtFld.getText().toString().isEmpty() | && !this.scaHTxtFld.getText().toString().isEmpty() | ||||
| && !this.scaVTxtFld.getText().toString().isEmpty() | && !this.scaVTxtFld.getText().toString().isEmpty() | ||||
| && !this.scVertScaleRngTxtFld.getText().toString().isEmpty() | && !this.scVertScaleRngTxtFld.getText().toString().isEmpty() | ||||
| && !this.scPointerOffsetTxtFld.getText().toString().isEmpty() | |||||
| && ((this.scHeVSSpinner.getVisibility() == View.VISIBLE && this.scHeVSSpinner.getSelectedItem() != null) | && ((this.scHeVSSpinner.getVisibility() == View.VISIBLE && this.scHeVSSpinner.getSelectedItem() != null) | ||||
| || (this.scHeVSTxtFld.getVisibility() == View.VISIBLE && !this.scHeVSTxtFld.getText().toString().isEmpty())) | || (this.scHeVSTxtFld.getVisibility() == View.VISIBLE && !this.scHeVSTxtFld.getText().toString().isEmpty())) | ||||
| && !this.scVertScaleMiddleTxtFld.getText().toString().isEmpty(); | && !this.scVertScaleMiddleTxtFld.getText().toString().isEmpty(); | ||||
| .indexOf('-') + 1, | .indexOf('-') + 1, | ||||
| this.scVertScaleRngTxtFld.getText().toString() | this.scVertScaleRngTxtFld.getText().toString() | ||||
| .length())) : 0d; | .length())) : 0d; | ||||
| Double pointerOffset = Double.valueOf(this.scPointerOffsetTxtFld.getText().toString()); | |||||
| Double nockRaising = Double.valueOf(this.nockRaisingTxtFld.getText().toString()) | Double nockRaising = Double.valueOf(this.nockRaisingTxtFld.getText().toString()) | ||||
| - Double.valueOf(this.arrowDiameterTxtFld.getText().toString()); | - Double.valueOf(this.arrowDiameterTxtFld.getText().toString()); | ||||
| Double braceHeight = Double.valueOf(this.braceHeightTxtFld.getText().toString()); | Double braceHeight = Double.valueOf(this.braceHeightTxtFld.getText().toString()); | ||||
| Double d = Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2)) * n; | Double d = Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2)) * n; | ||||
| // Einstellung auf vert. Skala | // Einstellung auf vert. Skala | ||||
| Double sV = Double.valueOf(this.scVertScaleMiddleTxtFld.getText().toString()) + d; | |||||
| Double sV = Double.valueOf(this.scVertScaleMiddleTxtFld.getText().toString()) + d - pointerOffset; | |||||
| this.scEvSValue.setText(DF_EVS.format(sV)); | this.scEvSValue.setText(DF_EVS.format(sV)); | ||||
| private TextView sccaHTxtFld; | private TextView sccaHTxtFld; | ||||
| private TextView scVertScaleRngMinTxtFld; | private TextView scVertScaleRngMinTxtFld; | ||||
| private TextView scVertScaleRngMaxTxtFld; | private TextView scVertScaleRngMaxTxtFld; | ||||
| private TextView scPointerOffsetTxtFld; | |||||
| private Button newBtn; | private Button newBtn; | ||||
| private Button saveBtn; | private Button saveBtn; | ||||
| this.sccaHTxtFld = (TextView) findViewById(R.id.sccaHTxtFld); | this.sccaHTxtFld = (TextView) findViewById(R.id.sccaHTxtFld); | ||||
| this.scVertScaleRngMinTxtFld = (TextView) findViewById(R.id.scVertScaleRngMinTxtFld); | this.scVertScaleRngMinTxtFld = (TextView) findViewById(R.id.scVertScaleRngMinTxtFld); | ||||
| this.scVertScaleRngMaxTxtFld = (TextView) findViewById(R.id.scVertScaleRngMaxTxtFld); | this.scVertScaleRngMaxTxtFld = (TextView) findViewById(R.id.scVertScaleRngMaxTxtFld); | ||||
| this.scPointerOffsetTxtFld = (TextView) findViewById(R.id.scPointerOffsetTxtFld); | |||||
| this.newBtn = (Button) findViewById(R.id.scBtnNew); | this.newBtn = (Button) findViewById(R.id.scBtnNew); | ||||
| this.saveBtn = (Button) findViewById(R.id.scBtnSave); | this.saveBtn = (Button) findViewById(R.id.scBtnSave); | ||||
| SightConfigurationActivity.this.sccaHTxtFld.setText(DF.format(sight.getAH())); | SightConfigurationActivity.this.sccaHTxtFld.setText(DF.format(sight.getAH())); | ||||
| SightConfigurationActivity.this.scVertScaleRngMinTxtFld.setText(DF.format(sight.getVertSkalaRangeMin())); | SightConfigurationActivity.this.scVertScaleRngMinTxtFld.setText(DF.format(sight.getVertSkalaRangeMin())); | ||||
| SightConfigurationActivity.this.scVertScaleRngMaxTxtFld.setText(DF.format(sight.getVertSkalaRangeMax())); | SightConfigurationActivity.this.scVertScaleRngMaxTxtFld.setText(DF.format(sight.getVertSkalaRangeMax())); | ||||
| SightConfigurationActivity.this.scPointerOffsetTxtFld.setText(DF.format(sight.getPointerOffset())); | |||||
| SightConfigurationActivity.this.selectedSight = sight; | SightConfigurationActivity.this.selectedSight = sight; | ||||
| } | } | ||||
| if (!this.scManufacturerTxtFld.getText().toString().isEmpty() && !this.scModelTxtFld.getText().toString().isEmpty() | if (!this.scManufacturerTxtFld.getText().toString().isEmpty() && !this.scModelTxtFld.getText().toString().isEmpty() | ||||
| && !this.sccHeVSTxtFld.getText().toString().isEmpty() && !this.sccaVTxtFld.getText().toString().isEmpty() | && !this.sccHeVSTxtFld.getText().toString().isEmpty() && !this.sccaVTxtFld.getText().toString().isEmpty() | ||||
| && !this.sccaHTxtFld.getText().toString().isEmpty() && !this.scVertScaleRngMinTxtFld.getText().toString().isEmpty() | && !this.sccaHTxtFld.getText().toString().isEmpty() && !this.scVertScaleRngMinTxtFld.getText().toString().isEmpty() | ||||
| && !this.scVertScaleRngMaxTxtFld.getText().toString().isEmpty()) { | |||||
| && !this.scVertScaleRngMaxTxtFld.getText().toString().isEmpty() | |||||
| && !this.scPointerOffsetTxtFld.getText().toString().isEmpty()) { | |||||
| this.selectedSight.setManufacturer(this.scManufacturerTxtFld.getText().toString()); | this.selectedSight.setManufacturer(this.scManufacturerTxtFld.getText().toString()); | ||||
| this.selectedSight.setModel(this.scModelTxtFld.getText().toString()); | this.selectedSight.setModel(this.scModelTxtFld.getText().toString()); | ||||
| this.selectedSight.setAH(Double.valueOf(this.sccaHTxtFld.getText().toString())); | this.selectedSight.setAH(Double.valueOf(this.sccaHTxtFld.getText().toString())); | ||||
| this.selectedSight.setVertSkalaRangeMin(Double.valueOf(this.scVertScaleRngMinTxtFld.getText().toString())); | this.selectedSight.setVertSkalaRangeMin(Double.valueOf(this.scVertScaleRngMinTxtFld.getText().toString())); | ||||
| this.selectedSight.setVertSkalaRangeMax(Double.valueOf(this.scVertScaleRngMaxTxtFld.getText().toString())); | this.selectedSight.setVertSkalaRangeMax(Double.valueOf(this.scVertScaleRngMaxTxtFld.getText().toString())); | ||||
| this.selectedSight.setPointerOffset(Double.valueOf(this.scPointerOffsetTxtFld.getText().toString())); | |||||
| if (this.selectedSight.getId() > 0) { | if (this.selectedSight.getId() > 0) { | ||||
| SightDao.getInstance().update(this.selectedSight); | SightDao.getInstance().update(this.selectedSight); | ||||
| */ | */ | ||||
| @SuppressWarnings("unchecked") | @SuppressWarnings("unchecked") | ||||
| protected void onNewSight() { | protected void onNewSight() { | ||||
| ISight newSight = new Sight(0, "*", "*", 0d, 0d, "", 0d, 0d); | |||||
| ISight newSight = new Sight(0, "*", "*", 0d, 0d, "", 0d, 0d, 0d); | |||||
| this.selectedSight = newSight; | this.selectedSight = newSight; | ||||
| ((FontArrayAdapter<ISight>) this.scSightSpinner.getAdapter()).add(newSight); | ((FontArrayAdapter<ISight>) this.scSightSpinner.getAdapter()).add(newSight); | ||||
| this.scSightSpinner.setSelectedSight(newSight); | this.scSightSpinner.setSelectedSight(newSight); | ||||
| this.sccaHTxtFld.setText(""); | this.sccaHTxtFld.setText(""); | ||||
| this.scVertScaleRngMinTxtFld.setText(""); | this.scVertScaleRngMinTxtFld.setText(""); | ||||
| this.scVertScaleRngMaxTxtFld.setText(""); | this.scVertScaleRngMaxTxtFld.setText(""); | ||||
| this.scPointerOffsetTxtFld.setText(""); | |||||
| } | } | ||||
| @Override | @Override |
| public final class RBSDatabaseHelper extends SQLiteOpenHelper { | public final class RBSDatabaseHelper extends SQLiteOpenHelper { | ||||
| public static final String DB_NAME = "RecurveBowSight.db"; | public static final String DB_NAME = "RecurveBowSight.db"; | ||||
| public static final int DB_VERSION = 1; | |||||
| public static final int DB_VERSION = 2; | |||||
| private static RBSDatabaseHelper instance; | private static RBSDatabaseHelper instance; | ||||
| private static Context context; | private static Context context; | ||||
| @Override | @Override | ||||
| public void onUpgrade(final SQLiteDatabase db, final int oldVersion, final int newVersion) { | public void onUpgrade(final SQLiteDatabase db, final int oldVersion, final int newVersion) { | ||||
| /** TODO Upgrade tasks */ | |||||
| if (oldVersion == 1 && newVersion == 2) { | |||||
| String sql = "Alter table " + TblRBSSight.NAME + " add column " + TblRBSSight.COL_POINTER_OFFSET + " Real NOT NULL DEFAULT 0"; | |||||
| db.execSQL(sql); | |||||
| } | |||||
| } | } | ||||
| List<ISight> sights = new ArrayList<ISight>(); | List<ISight> sights = new ArrayList<ISight>(); | ||||
| sights.add(new Sight(0, "Avalon", "Tec One", 17.5, -12d, "260,250,240,230,220,210,200,190,180,170,160", 5d, 105d)); | |||||
| sights.add(new Sight(0, "Avalon", "Tec One", 17.5, -12d, "260,250,240,230,220,210,200,190,180,170,160", 5d, 105d, 0d)); | |||||
| return sights; | return sights; | ||||
| } | } |
| protected ISight cursorToEntity(final Cursor cursor) { | protected ISight cursorToEntity(final Cursor cursor) { | ||||
| ISight sight = new Sight(cursor.getLong(0), cursor.getString(1), cursor.getString(2), cursor.getDouble(3), // | ISight sight = new Sight(cursor.getLong(0), cursor.getString(1), cursor.getString(2), cursor.getDouble(3), // | ||||
| cursor.getDouble(4), cursor.getString(5), cursor.getDouble(6), cursor.getDouble(7)); | |||||
| cursor.getDouble(4), cursor.getString(5), cursor.getDouble(6), cursor.getDouble(7), // | |||||
| cursor.getDouble(8)); | |||||
| return sight; | return sight; | ||||
| } | } | ||||
| values.put(TblRBSSight.COL_HEVIS, entity.getHeVis() != null ? entity.getHeVis() : ""); | values.put(TblRBSSight.COL_HEVIS, entity.getHeVis() != null ? entity.getHeVis() : ""); | ||||
| values.put(TblRBSSight.COL_VERTSKALARANGE_MIN, entity.getVertSkalaRangeMin() != null ? entity.getVertSkalaRangeMin() : 0d); | values.put(TblRBSSight.COL_VERTSKALARANGE_MIN, entity.getVertSkalaRangeMin() != null ? entity.getVertSkalaRangeMin() : 0d); | ||||
| values.put(TblRBSSight.COL_VERTSKALARANGE_MAX, entity.getVertSkalaRangeMax() != null ? entity.getVertSkalaRangeMax() : 0d); | values.put(TblRBSSight.COL_VERTSKALARANGE_MAX, entity.getVertSkalaRangeMax() != null ? entity.getVertSkalaRangeMax() : 0d); | ||||
| values.put(TblRBSSight.COL_POINTER_OFFSET, entity.getPointerOffset() != null ? entity.getPointerOffset() : 0d); | |||||
| return values; | return values; | ||||
| } | } |
| public static final String COL_HEVIS = "SIGHT_HEVIS"; | public static final String COL_HEVIS = "SIGHT_HEVIS"; | ||||
| public static final String COL_VERTSKALARANGE_MIN = "SIGHT_VERTSKALARANGE_MIN"; | public static final String COL_VERTSKALARANGE_MIN = "SIGHT_VERTSKALARANGE_MIN"; | ||||
| public static final String COL_VERTSKALARANGE_MAX = "SIGHT_VERTSKALARANGE_MAX"; | public static final String COL_VERTSKALARANGE_MAX = "SIGHT_VERTSKALARANGE_MAX"; | ||||
| public static final String COL_POINTER_OFFSET = "SIGHT_POINTER_OFFSET"; | |||||
| private TblRBSSight() { | |||||
| } | |||||
| private TblRBSSight() { } | |||||
| public static String getCreateStatement() { | public static String getCreateStatement() { | ||||
| return "create table " + NAME + "(" | return "create table " + NAME + "(" | ||||
| + COL_HEVIS + " Text NOT NULL, " | + COL_HEVIS + " Text NOT NULL, " | ||||
| + COL_VERTSKALARANGE_MIN + " Real NOT NULL, " | + COL_VERTSKALARANGE_MIN + " Real NOT NULL, " | ||||
| + COL_VERTSKALARANGE_MAX + " Real NOT NULL, " | + COL_VERTSKALARANGE_MAX + " Real NOT NULL, " | ||||
| + COL_POINTER_OFFSET + " Real NOT NULL DEFAULT 0, " | |||||
| + "constraint UNIQUE_SIGHT_MF_MODEL UNIQUE (" + COL_MANUFACTURER + "," + COL_MODEL + ")" | + "constraint UNIQUE_SIGHT_MF_MODEL UNIQUE (" + COL_MANUFACTURER + "," + COL_MODEL + ")" | ||||
| + ");"; | + ");"; | ||||
| } | } |
| void setVertSkalaRangeMax(Double vertSkalaRangMax); | void setVertSkalaRangeMax(Double vertSkalaRangMax); | ||||
| List<Double> getHeVisList(); | List<Double> getHeVisList(); | ||||
| Double getPointerOffset(); | |||||
| void setPointerOffset(Double pointerOffset); | |||||
| } | } |
| private String heVis; | private String heVis; | ||||
| private Double vertSkalaRangMin; | private Double vertSkalaRangMin; | ||||
| private Double vertSkalaRangMax; | private Double vertSkalaRangMax; | ||||
| private Double pointerOffset; | |||||
| /** | /** | ||||
| * Konstruktor. | * Konstruktor. | ||||
| */ | */ | ||||
| public Sight(final long id, final String manufacturer, final String model, final Double aV, | public Sight(final long id, final String manufacturer, final String model, final Double aV, | ||||
| final Double aH, final String heVis, final Double vertSkalaRangMin, | final Double aH, final String heVis, final Double vertSkalaRangMin, | ||||
| final Double vertSkalaRangMax) { | |||||
| final Double vertSkalaRangMax, final Double pointerOffset) { | |||||
| super(); | super(); | ||||
| this.id = id; | this.id = id; | ||||
| this.manufacturer = manufacturer; | this.manufacturer = manufacturer; | ||||
| this.heVis = heVis; | this.heVis = heVis; | ||||
| this.vertSkalaRangMin = vertSkalaRangMin; | this.vertSkalaRangMin = vertSkalaRangMin; | ||||
| this.vertSkalaRangMax = vertSkalaRangMax; | this.vertSkalaRangMax = vertSkalaRangMax; | ||||
| this.pointerOffset = pointerOffset; | |||||
| } | } | ||||
| /** | /** | ||||
| this.vertSkalaRangMax = vertSkalaRangMax; | this.vertSkalaRangMax = vertSkalaRangMax; | ||||
| } | } | ||||
| @Override | |||||
| public Double getPointerOffset() { | |||||
| return this.pointerOffset; | |||||
| } | |||||
| @Override | |||||
| public void setPointerOffset(final Double pointerOffset) { | |||||
| this.pointerOffset = pointerOffset; | |||||
| } | |||||
| @Override | @Override | ||||
| public List<Double> getHeVisList() { | public List<Double> getHeVisList() { |