r17 - in trunk: res/layout res/values res/values-fr src/fr/ifremer/wlo/measurement src/fr/ifremer/wlo/models src/fr/ifremer/wlo/models/referentials
Author: kmorin Date: 2014-01-22 22:54:59 +0100 (Wed, 22 Jan 2014) New Revision: 17 Url: http://forge.codelutin.com/projects/wlo/repository/revisions/17 Log: refs #4185 Saisie des observations Modified: trunk/res/layout/measurement.xml trunk/res/layout/measurement_logs_row.xml trunk/res/values-fr/strings.xml trunk/res/values/strings.xml trunk/src/fr/ifremer/wlo/measurement/GraphFragment.java trunk/src/fr/ifremer/wlo/measurement/LogsFragment.java trunk/src/fr/ifremer/wlo/measurement/MeasurementActivity.java trunk/src/fr/ifremer/wlo/models/MeasurementModel.java trunk/src/fr/ifremer/wlo/models/referentials/Age.java trunk/src/fr/ifremer/wlo/models/referentials/Gender.java trunk/src/fr/ifremer/wlo/models/referentials/Maturity.java Modified: trunk/res/layout/measurement.xml =================================================================== --- trunk/res/layout/measurement.xml 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/res/layout/measurement.xml 2014-01-22 21:54:59 UTC (rev 17) @@ -23,29 +23,11 @@ android:paddingLeft="10dp" android:paddingRight="5dp"/> - <RadioGroup android:id="@+id/genderRadioGroup" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_weight="1" - android:orientation="horizontal"> + <Spinner android:id="@+id/gender_spinner" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1"/> - <!--<RadioButton android:id="@+id/genderMaleRadio"--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content"--> - <!--android:text="@string/gender_male"/>--> - - <!--<RadioButton android:id="@+id/genderFemaleRadio"--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content"--> - <!--android:text="@string/gender_female"/>--> - - <!--<RadioButton android:id="@+id/genderUndefinedRadio"--> - <!--android:layout_width="wrap_content"--> - <!--android:layout_height="wrap_content"--> - <!--android:text="@string/gender_undefined"/>--> - - </RadioGroup> - <TextView android:text="@string/maturity" android:layout_width="wrap_content" android:layout_height="wrap_content" @@ -53,44 +35,23 @@ android:paddingLeft="10dp" android:paddingRight="5dp"/> - <RadioGroup android:id="@+id/maturityRadioGroup" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_weight="1" - android:orientation="horizontal"> + <Spinner android:id="@+id/maturity_spinner" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1"/> - <RadioButton android:id="@+id/maturityUndefinedRadio" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/maturity_undefined"/> + <TextView android:text="@string/age" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingTop="10dp" + android:paddingLeft="10dp" + android:paddingRight="5dp"/> - <RadioButton android:id="@+id/maturity1Radio" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="1"/> + <Spinner android:id="@+id/age_spinner" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_weight="1"/> - <RadioButton android:id="@+id/maturity2Radio" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="2"/> - - <RadioButton android:id="@+id/maturity3Radio" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="3"/> - - <RadioButton android:id="@+id/maturity4Radio" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="4"/> - - <RadioButton android:id="@+id/maturity5Radio" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="5"/> - - </RadioGroup> - <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> Modified: trunk/res/layout/measurement_logs_row.xml =================================================================== --- trunk/res/layout/measurement_logs_row.xml 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/res/layout/measurement_logs_row.xml 2014-01-22 21:54:59 UTC (rev 17) @@ -43,5 +43,13 @@ android:paddingRight="?android:attr/listPreferredItemPaddingRight" android:minHeight="?android:attr/listPreferredItemHeightSmall"/> + <TextView android:id="@+id/log_age" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceListItemSmall" + android:gravity="center_vertical" + android:paddingLeft="?android:attr/listPreferredItemPaddingLeft" + android:paddingRight="?android:attr/listPreferredItemPaddingRight" + android:minHeight="?android:attr/listPreferredItemHeightSmall"/> </LinearLayout> \ No newline at end of file Modified: trunk/res/values/strings.xml =================================================================== --- trunk/res/values/strings.xml 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/res/values/strings.xml 2014-01-22 21:54:59 UTC (rev 17) @@ -46,14 +46,10 @@ <string name="logs_tab">Logs</string> <string name="gender">Gender</string> - <string name="gender_male">M</string> - <string name="gender_female">F</string> - <string name="gender_undefined">U</string> - <string name="maturity">Maturity</string> - <string name="maturity_undefined">U</string> + <string name="age">Age</string> - <string name="measurment_graph_title">Observations</string> + <string name="measurement_graph_title">Observations</string> <string name="delete">Delete</string> <string name="deletion_confirmation_title">Delete an input</string> Modified: trunk/res/values-fr/strings.xml =================================================================== --- trunk/res/values-fr/strings.xml 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/res/values-fr/strings.xml 2014-01-22 21:54:59 UTC (rev 17) @@ -45,14 +45,10 @@ <string name="logs_tab">Logs</string> <string name="gender">Sexe</string> - <string name="gender_male">M</string> - <string name="gender_female">F</string> - <string name="gender_undefined">I</string> - <string name="maturity">Maturité</string> - <string name="maturity_undefined">I</string> + <string name="age">Âge</string> - <string name="measurment_graph_title">Observations</string> + <string name="measurement_graph_title">Observations</string> <string name="delete">Suppression</string> <string name="deletion_confirmation_title">Supprimer une mesure</string> Modified: trunk/src/fr/ifremer/wlo/measurement/GraphFragment.java =================================================================== --- trunk/src/fr/ifremer/wlo/measurement/GraphFragment.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/measurement/GraphFragment.java 2014-01-22 21:54:59 UTC (rev 17) @@ -47,7 +47,7 @@ LinearLayout root = (LinearLayout) getView(); - mCurrentSeries = new XYSeries(getString(R.string.measurment_graph_title)); + mCurrentSeries = new XYSeries(getString(R.string.measurement_graph_title)); final XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset(); mDataset.addSeries(mCurrentSeries); Modified: trunk/src/fr/ifremer/wlo/measurement/LogsFragment.java =================================================================== --- trunk/src/fr/ifremer/wlo/measurement/LogsFragment.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/measurement/LogsFragment.java 2014-01-22 21:54:59 UTC (rev 17) @@ -2,6 +2,7 @@ import android.app.Activity; import android.app.AlertDialog; +import android.content.Context; import android.content.DialogInterface; import android.os.Bundle; import android.view.LayoutInflater; @@ -106,10 +107,14 @@ @Override public String toString() { + Context context = getActivity(); String dateFormat = UIUtils.getDateFormat(getActivity()) + " " + getActivity().getString(R.string.fulltime_format); - String result = String.format(dateFormat + " - %2$s - %3$s - %4$s", date, - measurement.getSize(), measurement.getGender(), measurement.getMaturity()); + String result = String.format(dateFormat + " - %2$s - %3$s - %4$s - %5$s", date, + measurement.getSize(), + UIUtils.getStringOrUndefined(measurement.getGender(), context), + UIUtils.getStringOrUndefined(measurement.getMaturity(), context), + UIUtils.getStringOrUndefined(measurement.getAge(), context)); return result; } } Modified: trunk/src/fr/ifremer/wlo/measurement/MeasurementActivity.java =================================================================== --- trunk/src/fr/ifremer/wlo/measurement/MeasurementActivity.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/measurement/MeasurementActivity.java 2014-01-22 21:54:59 UTC (rev 17) @@ -16,8 +16,10 @@ import android.widget.ListView; import android.widget.RadioButton; import android.widget.RadioGroup; +import android.widget.Spinner; import android.widget.TabHost; import android.widget.TextView; +import com.google.common.collect.Lists; import fr.ifremer.wlo.CommercialSpeciesFormActivity; import fr.ifremer.wlo.MainActivity; import fr.ifremer.wlo.MetierFormActivity; @@ -27,6 +29,9 @@ import fr.ifremer.wlo.VesselFormActivity; import fr.ifremer.wlo.WloBaseActivity; import fr.ifremer.wlo.WloModelEditionActivity; +import fr.ifremer.wlo.models.referentials.Age; +import fr.ifremer.wlo.models.referentials.Maturity; +import fr.ifremer.wlo.storage.DataCache; import fr.ifremer.wlo.storage.WloSqlOpenHelper; import fr.ifremer.wlo.models.BaseModel; import fr.ifremer.wlo.models.CommercialSpeciesModel; @@ -40,12 +45,14 @@ import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; +import java.util.Collection; +import java.util.List; /** * @author kmorin <kmorin@codelutin.com> * @since 0.1 */ -public class MeasurementActivity extends WloBaseActivity implements RadioGroup.OnCheckedChangeListener { +public class MeasurementActivity extends WloBaseActivity implements AdapterView.OnItemSelectedListener { private static final String TAG = "MeasurementActivity"; @@ -58,7 +65,6 @@ protected TabHost tabs; protected EditText sizeText; - protected RadioGroup genderGroup; protected ActionBarDrawerToggle mDrawerToggle; protected MeasurementModel measurement; @@ -110,19 +116,25 @@ setupTab(R.id.logs, LOGS_TAB, R.string.logs_tab); sizeText = (EditText) findViewById(R.id.size); - genderGroup = (RadioGroup) findViewById(R.id.genderRadioGroup); - genderGroup.setOnCheckedChangeListener(this); - Cursor cursor = new WloSqlOpenHelper(this).getAllRefGenders(); - boolean cont = cursor.moveToFirst(); - while (cont) { - Gender g = new Gender(cursor); - RadioButton bt = new RadioButton(this); - bt.setText(g.getLabel()); - genderGroup.addView(bt); - cont = cursor.moveToNext(); - } + Spinner genderSpinner = (Spinner) findViewById(R.id.gender_spinner); + genderSpinner.setOnItemSelectedListener(this); + List<Gender> genders = Lists.newArrayList(DataCache.getAllGenders(this)); + ArrayAdapter<Gender> gendersAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, android.R.id.text1, genders); + genderSpinner.setAdapter(gendersAdapter); + Spinner maturitySpinner = (Spinner) findViewById(R.id.maturity_spinner); + maturitySpinner.setOnItemSelectedListener(this); + List<Maturity> maturities = Lists.newArrayList(DataCache.getAllMaturities(this)); + ArrayAdapter<Maturity> maturitiesAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, android.R.id.text1, maturities); + maturitySpinner.setAdapter(maturitiesAdapter); + + Spinner ageSpinner = (Spinner) findViewById(R.id.age_spinner); + ageSpinner.setOnItemSelectedListener(this); + List<Age> ages = Lists.newArrayList(DataCache.getAllAges(this)); + ArrayAdapter<Age> agesAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_item, android.R.id.text1, ages); + ageSpinner.setAdapter(agesAdapter); + initFishMeasurement(10, null); DrawerLayout mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); @@ -151,6 +163,7 @@ metier.toString(this) + " / " + commercialSpecies.toString(this) + " / " + scientificSpecies.toString(this)); + actionBar.setSubtitle(commercialSpecies.getMeasurementMethod().toString(this)); } @Override @@ -200,24 +213,23 @@ return super.onOptionsItemSelected(item); } - /* RadioGroup.OnCheckedChangeListener methods */ + @Override + public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) { + switch(adapterView.getId()) { + case R.id.gender_spinner: + measurement.setGender((Gender) adapterView.getItemAtPosition(i)); + break; + case R.id.maturity_spinner: + measurement.setMaturity((Maturity) adapterView.getItemAtPosition(i)); + break; + case R.id.age_spinner: + measurement.setAge((Age) adapterView.getItemAtPosition(i)); + break; + } + } @Override - public void onCheckedChanged(RadioGroup group, int checkedId) { -// if (group.equals(genderGroup)) { -// Measurement.Gender gender; -// switch (checkedId) { -// case R.id.genderFemaleRadio: -// gender = Measurement.Gender.F; -// break; -// case R.id.genderMaleRadio: -// gender = Measurement.Gender.M; -// break; -// default: -// gender = Measurement.Gender.I; -// } -// measurement.setGender(gender); -// } + public void onNothingSelected(AdapterView<?> adapterView) { } /* Public methods */ Modified: trunk/src/fr/ifremer/wlo/models/MeasurementModel.java =================================================================== --- trunk/src/fr/ifremer/wlo/models/MeasurementModel.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/models/MeasurementModel.java 2014-01-22 21:54:59 UTC (rev 17) @@ -1,6 +1,8 @@ package fr.ifremer.wlo.models; +import fr.ifremer.wlo.models.referentials.Age; import fr.ifremer.wlo.models.referentials.Gender; +import fr.ifremer.wlo.models.referentials.Maturity; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; @@ -17,10 +19,12 @@ public static final String SIZE_PROPERTY = "size"; public static final String GENDER_PROPERTY = "gender"; public static final String MATURITY_PROPERTY = "maturity"; + public static final String AGE_PROPERTY = "age"; protected Integer size; protected Gender gender; - protected Integer maturity; + protected Maturity maturity; + protected Age age; protected PropertyChangeSupport changeSupport = new PropertyChangeSupport(this); @@ -51,21 +55,31 @@ } public void setGender(Gender gender) { - Gender oldValue = this.gender; + Object oldValue = this.gender; this.gender = gender; changeSupport.firePropertyChange(GENDER_PROPERTY, oldValue, gender); } - public Integer getMaturity() { + public Maturity getMaturity() { return maturity; } - public void setMaturity(Integer maturity) { - Integer oldValue = this.maturity; + public void setMaturity(Maturity maturity) { + Object oldValue = this.maturity; this.maturity = maturity; changeSupport.firePropertyChange(MATURITY_PROPERTY, oldValue, maturity); } + public Age getAge() { + return age; + } + + public void setAge(Age age) { + Object oldValue = this.age; + this.age = age; + changeSupport.firePropertyChange(AGE_PROPERTY, oldValue, age); + } + public void addPropertyChangeListener(PropertyChangeListener listener) { changeSupport.addPropertyChangeListener(listener); } Modified: trunk/src/fr/ifremer/wlo/models/referentials/Age.java =================================================================== --- trunk/src/fr/ifremer/wlo/models/referentials/Age.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/models/referentials/Age.java 2014-01-22 21:54:59 UTC (rev 17) @@ -44,6 +44,11 @@ } @Override + public String toString() { + return label; + } + + @Override public String toString(android.content.Context context) { return UIUtils.getStringOrUndefined(label, context); } Modified: trunk/src/fr/ifremer/wlo/models/referentials/Gender.java =================================================================== --- trunk/src/fr/ifremer/wlo/models/referentials/Gender.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/models/referentials/Gender.java 2014-01-22 21:54:59 UTC (rev 17) @@ -56,6 +56,11 @@ } @Override + public String toString() { + return label; + } + + @Override public String toString(android.content.Context context) { return UIUtils.getStringOrUndefined(label, context); } Modified: trunk/src/fr/ifremer/wlo/models/referentials/Maturity.java =================================================================== --- trunk/src/fr/ifremer/wlo/models/referentials/Maturity.java 2014-01-22 18:43:25 UTC (rev 16) +++ trunk/src/fr/ifremer/wlo/models/referentials/Maturity.java 2014-01-22 21:54:59 UTC (rev 17) @@ -44,6 +44,11 @@ } @Override + public String toString() { + return label; + } + + @Override public String toString(android.content.Context context) { return UIUtils.getStringOrUndefined(label, context); }
participants (1)
-
kmorin@users.forge.codelutin.com