package com.permissionnanny.demo.extra;
import android.content.Context;
import android.location.Criteria;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.permissionnanny.demo.R;
/**
*
*/
public class CriteriaExtra implements Extra<Criteria> {
private IntegerExtra mAcccuracy = new IntegerExtra();
private IntegerExtra mHorizontalAccuracy = new IntegerExtra();
private IntegerExtra mVerticalAccuracy = new IntegerExtra();
private IntegerExtra mSpeedAccuracy = new IntegerExtra();
private IntegerExtra mBearingAccuracy = new IntegerExtra();
private IntegerExtra mPowerRequirement = new IntegerExtra();
private BooleanExtra mAltitudeRequired = new BooleanExtra();
private BooleanExtra mBearingRequired = new BooleanExtra();
private BooleanExtra mSpeedRequired = new BooleanExtra();
private BooleanExtra mCostAllowed = new BooleanExtra();
@Override
public View getView(Context context, ViewGroup parent, String label) {
ViewGroup view = (ViewGroup) LayoutInflater.from(context).inflate(R.layout.extras_criteria, parent, false);
((TextView) view.findViewById(R.id.tvLabel)).setText(label);
view.addView(mAcccuracy.getView(context, parent, "Accuracy"));
view.addView(mHorizontalAccuracy.getView(context, parent, "Horizontal Accuracy"));
view.addView(mVerticalAccuracy.getView(context, parent, "Vertical Accuracy"));
view.addView(mSpeedAccuracy.getView(context, parent, "Speed Accuracy"));
view.addView(mBearingAccuracy.getView(context, parent, "Bearing Accuracy"));
view.addView(mPowerRequirement.getView(context, parent, "Power Requirement"));
view.addView(mAltitudeRequired.getView(context, parent, "Altitude Required"));
view.addView(mBearingRequired.getView(context, parent, "Bearing Required"));
view.addView(mSpeedRequired.getView(context, parent, "Speed Required"));
view.addView(mCostAllowed.getView(context, parent, "Cost Allowed"));
return view;
}
@Override
public Criteria getValue() {
Criteria value = new Criteria();
value.setAccuracy(mAcccuracy.mValue);
value.setHorizontalAccuracy(mHorizontalAccuracy.mValue);
value.setVerticalAccuracy(mVerticalAccuracy.mValue);
value.setSpeedAccuracy(mSpeedAccuracy.mValue);
value.setBearingAccuracy(mBearingAccuracy.mValue);
value.setPowerRequirement(mPowerRequirement.mValue);
value.setAltitudeRequired(mAltitudeRequired.mValue);
value.setBearingRequired(mBearingRequired.mValue);
value.setSpeedRequired(mSpeedRequired.mValue);
value.setCostAllowed(mCostAllowed.mValue);
return value;
}
}