|
|
@ -1,21 +1,20 @@
|
|
|
|
package org.yuzu.yuzu_emu.features.settings.ui;
|
|
|
|
package org.yuzu.yuzu_emu.features.settings.ui
|
|
|
|
|
|
|
|
|
|
|
|
import android.content.IntentFilter;
|
|
|
|
import android.content.IntentFilter
|
|
|
|
|
|
|
|
import org.yuzu.yuzu_emu.features.settings.model.Settings
|
|
|
|
import org.yuzu.yuzu_emu.features.settings.model.Settings;
|
|
|
|
import org.yuzu.yuzu_emu.utils.DirectoryStateReceiver
|
|
|
|
import org.yuzu.yuzu_emu.utils.DirectoryStateReceiver;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Abstraction for the Activity that manages SettingsFragments.
|
|
|
|
* Abstraction for the Activity that manages SettingsFragments.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public interface SettingsActivityView {
|
|
|
|
interface SettingsActivityView {
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Show a new SettingsFragment.
|
|
|
|
* Show a new SettingsFragment.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param menuTag Identifier for the settings group that should be displayed.
|
|
|
|
* @param menuTag Identifier for the settings group that should be displayed.
|
|
|
|
* @param addToStack Whether or not this fragment should replace a previous one.
|
|
|
|
* @param addToStack Whether or not this fragment should replace a previous one.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void showSettingsFragment(String menuTag, boolean addToStack, String gameId);
|
|
|
|
fun showSettingsFragment(menuTag: String, addToStack: Boolean, gameId: String)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Called by a contained Fragment to get access to the Setting HashMap
|
|
|
|
* Called by a contained Fragment to get access to the Setting HashMap
|
|
|
@ -24,28 +23,19 @@ public interface SettingsActivityView {
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @return A possibly null HashMap of Settings.
|
|
|
|
* @return A possibly null HashMap of Settings.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
Settings getSettings();
|
|
|
|
var settings: Settings?
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Used to provide the Activity with Settings HashMaps if a Fragment already
|
|
|
|
|
|
|
|
* has one; for example, if a rotation occurs, the Fragment will not be killed,
|
|
|
|
|
|
|
|
* but the Activity will, so the Activity needs to have its HashMaps resupplied.
|
|
|
|
|
|
|
|
*
|
|
|
|
|
|
|
|
* @param settings The ArrayList of all the Settings HashMaps.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
void setSettings(Settings settings);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Called when an asynchronous load operation completes.
|
|
|
|
* Called when an asynchronous load operation completes.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param settings The (possibly null) result of the ini load operation.
|
|
|
|
* @param settings The (possibly null) result of the ini load operation.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void onSettingsFileLoaded(Settings settings);
|
|
|
|
fun onSettingsFileLoaded(settings: Settings?)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Called when an asynchronous load operation fails.
|
|
|
|
* Called when an asynchronous load operation fails.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void onSettingsFileNotFound();
|
|
|
|
fun onSettingsFileNotFound()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Display a popup text message on screen.
|
|
|
|
* Display a popup text message on screen.
|
|
|
@ -53,33 +43,33 @@ public interface SettingsActivityView {
|
|
|
|
* @param message The contents of the onscreen message.
|
|
|
|
* @param message The contents of the onscreen message.
|
|
|
|
* @param is_long Whether this should be a long Toast or short one.
|
|
|
|
* @param is_long Whether this should be a long Toast or short one.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void showToastMessage(String message, boolean is_long);
|
|
|
|
fun showToastMessage(message: String, is_long: Boolean)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* End the activity.
|
|
|
|
* End the activity.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void finish();
|
|
|
|
fun finish()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Called by a containing Fragment to tell the Activity that a setting was changed;
|
|
|
|
* Called by a containing Fragment to tell the Activity that a setting was changed;
|
|
|
|
* unless this has been called, the Activity will not save to disk.
|
|
|
|
* unless this has been called, the Activity will not save to disk.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void onSettingChanged();
|
|
|
|
fun onSettingChanged()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Show loading dialog while loading the settings
|
|
|
|
* Show loading dialog while loading the settings
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void showLoading();
|
|
|
|
fun showLoading()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Hide the loading the dialog
|
|
|
|
* Hide the loading the dialog
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void hideLoading();
|
|
|
|
fun hideLoading()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Show a hint to the user that the app needs the external storage to be mounted
|
|
|
|
* Show a hint to the user that the app needs the external storage to be mounted
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void showExternalStorageNotMountedHint();
|
|
|
|
fun showExternalStorageNotMountedHint()
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Start the DirectoryInitialization and listen for the result.
|
|
|
|
* Start the DirectoryInitialization and listen for the result.
|
|
|
@ -87,12 +77,15 @@ public interface SettingsActivityView {
|
|
|
|
* @param receiver the broadcast receiver for the DirectoryInitialization
|
|
|
|
* @param receiver the broadcast receiver for the DirectoryInitialization
|
|
|
|
* @param filter the Intent broadcasts to be received.
|
|
|
|
* @param filter the Intent broadcasts to be received.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void startDirectoryInitializationService(DirectoryStateReceiver receiver, IntentFilter filter);
|
|
|
|
fun startDirectoryInitializationService(
|
|
|
|
|
|
|
|
receiver: DirectoryStateReceiver?,
|
|
|
|
|
|
|
|
filter: IntentFilter
|
|
|
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Stop listening to the DirectoryInitialization.
|
|
|
|
* Stop listening to the DirectoryInitialization.
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* @param receiver The broadcast receiver to unregister.
|
|
|
|
* @param receiver The broadcast receiver to unregister.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
void stopListeningToDirectoryInitializationService(DirectoryStateReceiver receiver);
|
|
|
|
fun stopListeningToDirectoryInitializationService(receiver: DirectoryStateReceiver)
|
|
|
|
}
|
|
|
|
}
|