1
0
mirror of https://github.com/oliexdev/openScale.git synced 2025-08-21 07:51:46 +02:00

colour the measurement order fragment correctly

This commit is contained in:
OliE
2018-03-03 10:43:30 +01:00
parent 68cb87cb0c
commit d4a968d6e4
3 changed files with 29 additions and 13 deletions

View File

@@ -21,6 +21,7 @@ import android.content.DialogInterface;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.Point; import android.graphics.Point;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.os.Bundle; import android.os.Bundle;
import android.preference.CheckBoxPreference; import android.preference.CheckBoxPreference;
@@ -65,6 +66,9 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
public static final String PREFERENCE_KEY_ESTIMATE_FAT = "estimateFatEnable"; public static final String PREFERENCE_KEY_ESTIMATE_FAT = "estimateFatEnable";
public static final String PREFERENCE_KEY_ESTIMATE_FAT_FORMULA = "estimateFatFormula"; public static final String PREFERENCE_KEY_ESTIMATE_FAT_FORMULA = "estimateFatFormula";
public static final String PREFERENCE_KEY_RESET_ORDER = "resetOrder";
public static final String PREFERENCE_KEY_ORDER_CATEGORY = "orderCategory";
private Preference deleteAll; private Preference deleteAll;
private PreferenceScreen measurementOrderScreen; private PreferenceScreen measurementOrderScreen;
@@ -93,15 +97,13 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
deleteAll = (Preference) findPreference(PREFERENCE_KEY_DELETE_ALL); deleteAll = (Preference) findPreference(PREFERENCE_KEY_DELETE_ALL);
deleteAll.setOnPreferenceClickListener(new onClickListenerDeleteAll()); deleteAll.setOnPreferenceClickListener(new onClickListenerDeleteAll());
final Context context = getActivity().getApplicationContext(); final Context context = getActivity().getBaseContext();
measurementOrderScreen = (PreferenceScreen) findPreference(MeasurementView.PREF_MEASUREMENT_ORDER); measurementOrderScreen = (PreferenceScreen) findPreference(MeasurementView.PREF_MEASUREMENT_ORDER);
measurementOrderCategory = new PreferenceCategory(context); measurementOrderCategory = (PreferenceCategory) findPreference(PREFERENCE_KEY_ORDER_CATEGORY);
measurementOrderCategory.setTitle(R.string.label_press_hold_reorder);
measurementOrderCategory.setOrderingAsAdded(true); measurementOrderCategory.setOrderingAsAdded(true);
Preference resetOrder = new Preference(context); Preference resetOrder = findPreference(PREFERENCE_KEY_RESET_ORDER);
resetOrder.setTitle(R.string.label_set_default_order);
resetOrder.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { resetOrder.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override @Override
public boolean onPreferenceClick(Preference preference) { public boolean onPreferenceClick(Preference preference) {
@@ -112,8 +114,6 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
return true; return true;
} }
}); });
measurementOrderScreen.addPreference(resetOrder);
measurementOrderScreen.addPreference(measurementOrderCategory);
updateMeasurementOrderScreen(context, measurementOrderCategory); updateMeasurementOrderScreen(context, measurementOrderCategory);
@@ -335,7 +335,9 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
super(context); super(context);
parentGroup = parent; parentGroup = parent;
measurement = measurementView; measurement = measurementView;
setIcon(measurement.getIcon()); Drawable icon = measurement.getIcon();
icon.setColorFilter(measurementView.getForegroundColor(), PorterDuff.Mode.SRC_IN);
setIcon(icon);
setTitle(measurement.getName()); setTitle(measurement.getName());
} }

View File

@@ -75,10 +75,19 @@ public abstract class MeasurementView extends TableLayout {
private MeasurementViewUpdateListener updateListener = null; private MeasurementViewUpdateListener updateListener = null;
private MeasurementViewMode measurementMode = VIEW; private MeasurementViewMode measurementMode = VIEW;
private static SharedPreferences prefs;
private boolean updateViews = true; private boolean updateViews = true;
public MeasurementView(Context context, String text, Drawable icon) { public MeasurementView(Context context, String text, Drawable icon) {
super(context); super(context);
prefs = PreferenceManager.getDefaultSharedPreferences(context);
String app_theme = prefs.getString("app_theme", "Light");
if (app_theme.equals("Dark")) {
context.setTheme(R.style.AppTheme_Dark);
}
initView(context); initView(context);
nameView.setText(text); nameView.setText(text);
@@ -94,8 +103,6 @@ public abstract class MeasurementView extends TableLayout {
sorted.add(new TimeMeasurementView(context)); sorted.add(new TimeMeasurementView(context));
} }
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
{ {
final List<MeasurementView> unsorted = new ArrayList<>(); final List<MeasurementView> unsorted = new ArrayList<>();
@@ -182,7 +189,7 @@ public abstract class MeasurementView extends TableLayout {
iconView.setScaleType(ImageView.ScaleType.CENTER_INSIDE); iconView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
iconView.setPadding(20,0,20,0); iconView.setPadding(20,0,20,0);
iconView.setColorFilter(nameView.getCurrentTextColor()); iconView.setColorFilter(getForegroundColor());
nameView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15); nameView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15);
nameView.setLines(2); nameView.setLines(2);
@@ -201,7 +208,7 @@ public abstract class MeasurementView extends TableLayout {
editModeView.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.ic_editable)); editModeView.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.ic_editable));
editModeView.setScaleType(ImageView.ScaleType.CENTER_INSIDE); editModeView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
editModeView.setVisibility(View.GONE); editModeView.setVisibility(View.GONE);
editModeView.setColorFilter(nameView.getCurrentTextColor()); editModeView.setColorFilter(getForegroundColor());
indicatorView.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.MATCH_PARENT, 0.01f)); indicatorView.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.MATCH_PARENT, 0.01f));
indicatorView.setBackgroundColor(Color.GRAY); indicatorView.setBackgroundColor(Color.GRAY);
@@ -305,6 +312,10 @@ public abstract class MeasurementView extends TableLayout {
} }
} }
public int getForegroundColor() {
return valueView.getCurrentTextColor();
}
protected void showEvaluatorRow(boolean show) { protected void showEvaluatorRow(boolean show) {
if (show) { if (show) {
evaluatorRow.setVisibility(View.VISIBLE); evaluatorRow.setVisibility(View.VISIBLE);

View File

@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/label_category_display"> <PreferenceCategory android:title="@string/label_category_display">
<PreferenceScreen android:title="@string/label_measurement_order" android:key="measurementOrder" /> <PreferenceScreen android:title="@string/label_measurement_order" android:key="measurementOrder">
<Preference android:key="resetOrder" android:title="@string/label_set_default_order"/>
<PreferenceCategory android:key="orderCategory" android:title="@string/label_press_hold_reorder"/>
</PreferenceScreen>
<CheckBoxPreference android:title="@string/label_fat" android:summaryOn="@string/info_is_enable" android:summaryOff="@string/info_is_not_enable" android:key="fatEnable" android:defaultValue="true"/> <CheckBoxPreference android:title="@string/label_fat" android:summaryOn="@string/info_is_enable" android:summaryOff="@string/info_is_not_enable" android:key="fatEnable" android:defaultValue="true"/>
<SwitchPreference android:title="@string/label_fat_percentage" android:summaryOn="@string/info_is_enable" android:summaryOff="@string/info_is_not_enable" android:key ="fatPercentageEnable" android:defaultValue="true"/> <SwitchPreference android:title="@string/label_fat_percentage" android:summaryOn="@string/info_is_enable" android:summaryOff="@string/info_is_not_enable" android:key ="fatPercentageEnable" android:defaultValue="true"/>
<CheckBoxPreference android:title="@string/label_water" android:summaryOn="@string/info_is_enable" android:summaryOff="@string/info_is_not_enable" android:key="waterEnable" android:defaultValue="true"/> <CheckBoxPreference android:title="@string/label_water" android:summaryOn="@string/info_is_enable" android:summaryOff="@string/info_is_not_enable" android:key="waterEnable" android:defaultValue="true"/>