use of net.osmand.plus.settings.preferences.SwitchPreferenceEx in project Osmand by osmandapp.
the class DevelopmentSettingsFragment method setupFullscreenMapDrawingModePref.
private void setupFullscreenMapDrawingModePref() {
SwitchPreferenceEx fullscreenMapDrawingMode = findPreference(settings.TRANSPARENT_STATUS_BAR.getId());
fullscreenMapDrawingMode.setDescription(getString(R.string.transparent_status_bar_descr));
fullscreenMapDrawingMode.setIconSpaceReserved(false);
}
use of net.osmand.plus.settings.preferences.SwitchPreferenceEx in project Osmand by osmandapp.
the class MonitoringSettingsFragment method setupDisableRecordingOnceAppKilledPref.
private void setupDisableRecordingOnceAppKilledPref() {
SwitchPreferenceEx disableRecordingOnceAppKilled = (SwitchPreferenceEx) findPreference(settings.DISABLE_RECORDING_ONCE_APP_KILLED.getId());
disableRecordingOnceAppKilled.setDescription(getString(R.string.disable_recording_once_app_killed_descrp));
}
use of net.osmand.plus.settings.preferences.SwitchPreferenceEx in project Osmand by osmandapp.
the class BooleanPreferenceBottomSheet method createMenuItems.
@Override
public void createMenuItems(Bundle savedInstanceState) {
final OsmandApplication app = getMyApplication();
if (app == null) {
return;
}
final SwitchPreferenceEx switchPreference = getSwitchPreferenceEx();
if (switchPreference == null) {
return;
}
OsmandPreference preference = app.getSettings().getPreference(switchPreference.getKey());
if (!(preference instanceof BooleanPreference)) {
return;
}
Context themedCtx = UiUtilities.getThemedContext(app, nightMode);
String title = switchPreference.getTitle().toString();
items.add(new TitleItem(title));
final BooleanPreference pref = (BooleanPreference) preference;
CharSequence summaryOn = switchPreference.getSummaryOn();
CharSequence summaryOff = switchPreference.getSummaryOff();
final String on = summaryOn == null || summaryOn.toString().isEmpty() ? getString(R.string.shared_string_enabled) : summaryOn.toString();
final String off = summaryOff == null || summaryOff.toString().isEmpty() ? getString(R.string.shared_string_disabled) : summaryOff.toString();
final int activeColor = AndroidUtils.resolveAttribute(themedCtx, R.attr.active_color_basic);
final int disabledColor = AndroidUtils.resolveAttribute(themedCtx, android.R.attr.textColorSecondary);
boolean checked = switchPreference.isChecked();
final BottomSheetItemWithCompoundButton[] preferenceBtn = new BottomSheetItemWithCompoundButton[1];
preferenceBtn[0] = (BottomSheetItemWithCompoundButton) new BottomSheetItemWithCompoundButton.Builder().setChecked(checked).setTitle(checked ? on : off).setTitleColorId(checked ? activeColor : disabledColor).setCustomView(getCustomButtonView(app, getAppMode(), checked, nightMode)).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean newValue = !switchPreference.isChecked();
Fragment targetFragment = getTargetFragment();
if (targetFragment instanceof OnConfirmPreferenceChange) {
ApplyQueryType applyQueryType = getApplyQueryType();
if (applyQueryType == ApplyQueryType.SNACK_BAR) {
applyQueryType = ApplyQueryType.NONE;
}
OnConfirmPreferenceChange confirmationInterface = (OnConfirmPreferenceChange) targetFragment;
if (confirmationInterface.onConfirmPreferenceChange(switchPreference.getKey(), newValue, applyQueryType)) {
switchPreference.setChecked(newValue);
preferenceBtn[0].setTitle(newValue ? on : off);
preferenceBtn[0].setChecked(newValue);
preferenceBtn[0].setTitleColorId(newValue ? activeColor : disabledColor);
updateCustomButtonView(app, getAppMode(), v, newValue, nightMode);
if (targetFragment instanceof OnPreferenceChanged) {
((OnPreferenceChanged) targetFragment).onPreferenceChanged(switchPreference.getKey());
}
}
}
}
}).create();
if (isProfileDependent()) {
preferenceBtn[0].setCompoundButtonColor(getAppMode().getProfileColor(nightMode));
}
items.add(preferenceBtn[0]);
String description = switchPreference.getDescription();
if (description != null) {
BaseBottomSheetItem preferenceDescription = new BottomSheetItemWithDescription.Builder().setDescription(description).setLayoutId(R.layout.bottom_sheet_item_descr).create();
items.add(preferenceDescription);
}
}
use of net.osmand.plus.settings.preferences.SwitchPreferenceEx in project Osmand by osmandapp.
the class BaseSettingsFragment method onDisplayPreferenceDialog.
@Override
public void onDisplayPreferenceDialog(Preference preference) {
FragmentManager fragmentManager = getFragmentManager();
if (fragmentManager == null) {
return;
}
ApplicationMode appMode = getSelectedAppMode();
if (preference instanceof ListPreferenceEx) {
SingleSelectPreferenceBottomSheet.showInstance(fragmentManager, preference.getKey(), this, false, appMode, isProfileDependent(), false);
} else if (preference instanceof SwitchPreferenceEx) {
BooleanPreferenceBottomSheet.showInstance(fragmentManager, preference.getKey(), this, false, appMode, getApplyQueryType(), isProfileDependent());
} else if (preference instanceof EditTextPreference) {
EditTextPreferenceBottomSheet.showInstance(fragmentManager, preference.getKey(), this, false, appMode);
} else if (preference instanceof MultiSelectBooleanPreference) {
MultiSelectPreferencesBottomSheet.showInstance(fragmentManager, preference.getKey(), this, false, appMode, isProfileDependent());
} else {
super.onDisplayPreferenceDialog(preference);
}
}
use of net.osmand.plus.settings.preferences.SwitchPreferenceEx in project Osmand by osmandapp.
the class NavigationFragment method setupPreferences.
@Override
protected void setupPreferences() {
navigationType = findPreference(NAVIGATION_TYPE);
setupNavigationTypePref();
Preference routeParameters = findPreference("route_parameters");
SwitchPreferenceCompat showRoutingAlarms = findPreference(settings.SHOW_ROUTING_ALARMS.getId());
SwitchPreferenceEx animateMyLocation = findPreference(settings.ANIMATE_MY_LOCATION.getId());
routeParameters.setIcon(getContentIcon(R.drawable.ic_action_route_distance));
showRoutingAlarms.setIcon(getPersistentPrefIcon(R.drawable.ic_action_alert));
setupSpeakRoutingAlarmsPref();
setupVehicleParametersPref();
showHideCustomizeRouteLinePref();
animateMyLocation.setDescription(getString(R.string.animate_my_location_desc));
}
Aggregations