Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #9698 from JosJuice/android-settings-charsequence
Android: Use CharSequence for SettingsItem name/description
  • Loading branch information
lioncash committed May 13, 2021
2 parents 725ea3d + c5491e8 commit 8d7b000
Show file tree
Hide file tree
Showing 29 changed files with 513 additions and 464 deletions.
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractBooleanSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -8,9 +10,17 @@ public class CheckBoxSetting extends SettingsItem
{
protected AbstractBooleanSetting mSetting;

public CheckBoxSetting(AbstractBooleanSetting setting, int titleId, int descriptionId)
public CheckBoxSetting(Context context, AbstractBooleanSetting setting, int titleId,
int descriptionId)
{
super(context, titleId, descriptionId);
mSetting = setting;
}

public CheckBoxSetting(AbstractBooleanSetting setting, CharSequence title,
CharSequence description)
{
super(titleId, descriptionId);
super(title, description);
mSetting = setting;
}

Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractStringSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -12,10 +14,10 @@ public final class FilePicker extends SettingsItem
private int mRequestType;
private String mDefaultPathRelativeToUserDirectory;

public FilePicker(AbstractStringSetting setting, int titleId, int descriptionId, int requestType,
@Nullable String defaultPathRelativeToUserDirectory)
public FilePicker(Context context, AbstractStringSetting setting, int titleId, int descriptionId,
int requestType, @Nullable String defaultPathRelativeToUserDirectory)
{
super(titleId, descriptionId);
super(context, titleId, descriptionId);
mSetting = setting;
mRequestType = requestType;
mDefaultPathRelativeToUserDirectory = defaultPathRelativeToUserDirectory;
Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractFloatSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -8,10 +10,10 @@ public class FloatSliderSetting extends SliderSetting
{
protected AbstractFloatSetting mSetting;

public FloatSliderSetting(AbstractFloatSetting setting, int titleId, int descriptionId, int min,
int max, String units)
public FloatSliderSetting(Context context, AbstractFloatSetting setting, int titleId,
int descriptionId, int min, int max, String units)
{
super(titleId, descriptionId, min, max, units);
super(context, titleId, descriptionId, min, max, units);
mSetting = setting;
}

Expand Down
@@ -1,12 +1,14 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;

public final class HeaderSetting extends SettingsItem
{
public HeaderSetting(int titleId, int descriptionId)
public HeaderSetting(Context context, int titleId, int descriptionId)
{
super(titleId, descriptionId);
super(context, titleId, descriptionId);
}

@Override
Expand Down
@@ -1,5 +1,6 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import android.view.InputDevice;
Expand All @@ -17,9 +18,10 @@ public class InputBindingSetting extends SettingsItem

private String mGameId;

public InputBindingSetting(String file, String section, String key, int titleId, String gameId)
public InputBindingSetting(Context context, String file, String section, String key, int titleId,
String gameId)
{
super(titleId, 0);
super(context, titleId, 0);
mFile = file;
mSection = section;
mKey = key;
Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractIntSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -8,10 +10,10 @@ public final class IntSliderSetting extends SliderSetting
{
private AbstractIntSetting mSetting;

public IntSliderSetting(AbstractIntSetting setting, int titleId, int descriptionId, int min,
int max, String units)
public IntSliderSetting(Context context, AbstractIntSetting setting, int titleId,
int descriptionId, int min, int max, String units)
{
super(titleId, descriptionId, min, max, units);
super(context, titleId, descriptionId, min, max, units);
mSetting = setting;
}

Expand Down
@@ -1,15 +1,17 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractBooleanSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;

public final class InvertedCheckBoxSetting extends CheckBoxSetting
{
public InvertedCheckBoxSetting(AbstractBooleanSetting setting, int titleId,
public InvertedCheckBoxSetting(Context context, AbstractBooleanSetting setting, int titleId,
int descriptionId)
{
super(setting, titleId, descriptionId);
super(context, setting, titleId, descriptionId);
}

@Override
Expand Down
@@ -1,16 +1,18 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AdHocBooleanSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;

public class LogCheckBoxSetting extends CheckBoxSetting
{
String mKey;

public LogCheckBoxSetting(String key, int titleId, int descriptionId)
public LogCheckBoxSetting(String key, CharSequence title, CharSequence description)
{
super(new AdHocBooleanSetting(Settings.FILE_LOGGER, Settings.SECTION_LOGGER_LOGS, key, false),
titleId, descriptionId);
title, description);
mKey = key;
}

Expand Down
@@ -1,15 +1,17 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractFloatSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;

public final class PercentSliderSetting extends FloatSliderSetting
{
public PercentSliderSetting(AbstractFloatSetting setting, int titleId, int descriptionId, int min,
int max, String units)
public PercentSliderSetting(Context context, AbstractFloatSetting setting, int titleId,
int descriptionId, int min, int max, String units)
{
super(setting, titleId, descriptionId, min, max, units);
super(context, setting, titleId, descriptionId, min, max, units);
}

@Override
Expand Down
@@ -1,5 +1,6 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;
import android.os.Vibrator;
import android.view.InputDevice;
import android.view.KeyEvent;
Expand All @@ -12,9 +13,10 @@

public class RumbleBindingSetting extends InputBindingSetting
{
public RumbleBindingSetting(String file, String section, String key, int titleId, String gameId)
public RumbleBindingSetting(Context context, String file, String section, String key, int titleId,
String gameId)
{
super(file, section, key, titleId, gameId);
super(context, file, section, key, titleId, gameId);
}

/**
Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;

public final class RunRunnable extends SettingsItem
Expand All @@ -8,10 +10,10 @@ public final class RunRunnable extends SettingsItem
private final int mToastTextAfterRun;
private final Runnable mRunnable;

public RunRunnable(int titleId, int descriptionId, int alertText, int toastTextAfterRun,
Runnable runnable)
public RunRunnable(Context context, int titleId, int descriptionId, int alertText,
int toastTextAfterRun, Runnable runnable)
{
super(titleId, descriptionId);
super(context, titleId, descriptionId);
mAlertText = alertText;
mToastTextAfterRun = toastTextAfterRun;
mRunnable = runnable;
Expand Down
@@ -1,5 +1,8 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.DolphinApplication;
import org.dolphinemu.dolphinemu.NativeLibrary;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -24,33 +27,39 @@
public static final int TYPE_FILE_PICKER = 9;
public static final int TYPE_RUN_RUNNABLE = 10;

private final int mNameId;
private final int mDescriptionId;
private final CharSequence mName;
private final CharSequence mDescription;

/**
* Base constructor.
*
* @param nameId Resource ID for a text string to be displayed as this setting's name.
* @param descriptionId Resource ID for a text string to be displayed as this setting's description.
* @param name A text string to be displayed as this setting's name.
* @param description A text string to be displayed as this setting's description.
*/

public SettingsItem(int nameId, int descriptionId)
public SettingsItem(CharSequence name, CharSequence description)
{
mNameId = nameId;
mDescriptionId = descriptionId;
mName = name;
mDescription = description;
}

/**
* @return A resource ID for a text string representing this setting's name.
* @param nameId Resource ID for a text string to be displayed as this setting's name.
* @param descriptionId Resource ID for a text string to be displayed as this setting's description.
*/
public int getNameId()
public SettingsItem(Context context, int nameId, int descriptionId)
{
mName = nameId == 0 ? "" : context.getText(nameId);
mDescription = descriptionId == 0 ? "" : context.getText(descriptionId);
}

public CharSequence getName()
{
return mNameId;
return mName;
}

public int getDescriptionId()
public CharSequence getDescription()
{
return mDescriptionId;
return mDescription;
}

/**
Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractIntSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -13,20 +15,20 @@ public final class SingleChoiceSetting extends SettingsItem
private int mValuesId;
private MenuTag menuTag;

public SingleChoiceSetting(AbstractIntSetting setting, int titleId, int descriptionId,
int choicesId, int valuesId, MenuTag menuTag)
public SingleChoiceSetting(Context context, AbstractIntSetting setting, int titleId,
int descriptionId, int choicesId, int valuesId, MenuTag menuTag)
{
super(titleId, descriptionId);
super(context, titleId, descriptionId);
mSetting = setting;
mValuesId = valuesId;
mChoicesId = choicesId;
this.menuTag = menuTag;
}

public SingleChoiceSetting(AbstractIntSetting setting, int titleId, int descriptionId,
int choicesId, int valuesId)
public SingleChoiceSetting(Context context, AbstractIntSetting setting, int titleId,
int descriptionId, int choicesId, int valuesId)
{
this(setting, titleId, descriptionId, choicesId, valuesId, null);
this(context, setting, titleId, descriptionId, choicesId, valuesId, null);
}

public int getChoicesId()
Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.AbstractIntSetting;
import org.dolphinemu.dolphinemu.features.settings.model.AbstractSetting;
import org.dolphinemu.dolphinemu.features.settings.model.Settings;
Expand All @@ -15,11 +17,11 @@ public final class SingleChoiceSettingDynamicDescriptions extends SettingsItem
private int mDescriptionValuesId;
private MenuTag menuTag;

public SingleChoiceSettingDynamicDescriptions(AbstractIntSetting setting, int titleId,
int descriptionId, int choicesId, int valuesId, int descriptionChoicesId,
public SingleChoiceSettingDynamicDescriptions(Context context, AbstractIntSetting setting,
int titleId, int descriptionId, int choicesId, int valuesId, int descriptionChoicesId,
int descriptionValuesId, MenuTag menuTag)
{
super(titleId, descriptionId);
super(context, titleId, descriptionId);
mSetting = setting;
mValuesId = valuesId;
mChoicesId = choicesId;
Expand All @@ -28,11 +30,11 @@ public SingleChoiceSettingDynamicDescriptions(AbstractIntSetting setting, int ti
this.menuTag = menuTag;
}

public SingleChoiceSettingDynamicDescriptions(AbstractIntSetting setting, int titleId,
int descriptionId, int choicesId, int valuesId, int descriptionChoicesId,
public SingleChoiceSettingDynamicDescriptions(Context context, AbstractIntSetting setting,
int titleId, int descriptionId, int choicesId, int valuesId, int descriptionChoicesId,
int descriptionValuesId)
{
this(setting, titleId, descriptionId, choicesId, valuesId, descriptionChoicesId,
this(context, setting, titleId, descriptionId, choicesId, valuesId, descriptionChoicesId,
descriptionValuesId, null);
}

Expand Down
@@ -1,5 +1,7 @@
package org.dolphinemu.dolphinemu.features.settings.model.view;

import android.content.Context;

import org.dolphinemu.dolphinemu.features.settings.model.Settings;

public abstract class SliderSetting extends SettingsItem
Expand All @@ -8,9 +10,10 @@ public abstract class SliderSetting extends SettingsItem
private int mMax;
private String mUnits;

public SliderSetting(int nameId, int descriptionId, int min, int max, String units)
public SliderSetting(Context context, int nameId, int descriptionId, int min, int max,
String units)
{
super(nameId, descriptionId);
super(context, nameId, descriptionId);
mMin = min;
mMax = max;
mUnits = units;
Expand Down

0 comments on commit 8d7b000

Please sign in to comment.