1
0
mirror of https://github.com/oliexdev/openScale.git synced 2025-08-20 07:21:40 +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.graphics.Color;
import android.graphics.Point;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
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_FORMULA = "estimateFatFormula";
public static final String PREFERENCE_KEY_RESET_ORDER = "resetOrder";
public static final String PREFERENCE_KEY_ORDER_CATEGORY = "orderCategory";
private Preference deleteAll;
private PreferenceScreen measurementOrderScreen;
@@ -93,15 +97,13 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
deleteAll = (Preference) findPreference(PREFERENCE_KEY_DELETE_ALL);
deleteAll.setOnPreferenceClickListener(new onClickListenerDeleteAll());
final Context context = getActivity().getApplicationContext();
final Context context = getActivity().getBaseContext();
measurementOrderScreen = (PreferenceScreen) findPreference(MeasurementView.PREF_MEASUREMENT_ORDER);
measurementOrderCategory = new PreferenceCategory(context);
measurementOrderCategory.setTitle(R.string.label_press_hold_reorder);
measurementOrderCategory = (PreferenceCategory) findPreference(PREFERENCE_KEY_ORDER_CATEGORY);
measurementOrderCategory.setOrderingAsAdded(true);
Preference resetOrder = new Preference(context);
resetOrder.setTitle(R.string.label_set_default_order);
Preference resetOrder = findPreference(PREFERENCE_KEY_RESET_ORDER);
resetOrder.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
@@ -112,8 +114,6 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
return true;
}
});
measurementOrderScreen.addPreference(resetOrder);
measurementOrderScreen.addPreference(measurementOrderCategory);
updateMeasurementOrderScreen(context, measurementOrderCategory);
@@ -335,7 +335,9 @@ public class MeasurementPreferences extends PreferenceFragment implements Shared
super(context);
parentGroup = parent;
measurement = measurementView;
setIcon(measurement.getIcon());
Drawable icon = measurement.getIcon();
icon.setColorFilter(measurementView.getForegroundColor(), PorterDuff.Mode.SRC_IN);
setIcon(icon);
setTitle(measurement.getName());
}

View File

@@ -75,10 +75,19 @@ public abstract class MeasurementView extends TableLayout {
private MeasurementViewUpdateListener updateListener = null;
private MeasurementViewMode measurementMode = VIEW;
private static SharedPreferences prefs;
private boolean updateViews = true;
public MeasurementView(Context context, String text, Drawable icon) {
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);
nameView.setText(text);
@@ -94,8 +103,6 @@ public abstract class MeasurementView extends TableLayout {
sorted.add(new TimeMeasurementView(context));
}
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
{
final List<MeasurementView> unsorted = new ArrayList<>();
@@ -182,7 +189,7 @@ public abstract class MeasurementView extends TableLayout {
iconView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
iconView.setPadding(20,0,20,0);
iconView.setColorFilter(nameView.getCurrentTextColor());
iconView.setColorFilter(getForegroundColor());
nameView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15);
nameView.setLines(2);
@@ -201,7 +208,7 @@ public abstract class MeasurementView extends TableLayout {
editModeView.setImageDrawable(ContextCompat.getDrawable(context, R.drawable.ic_editable));
editModeView.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
editModeView.setVisibility(View.GONE);
editModeView.setColorFilter(nameView.getCurrentTextColor());
editModeView.setColorFilter(getForegroundColor());
indicatorView.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.MATCH_PARENT, 0.01f));
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) {
if (show) {
evaluatorRow.setVisibility(View.VISIBLE);

View File

@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<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"/>
<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"/>