Android: remove generic settings, PGC and external gamepads input config

This commit is contained in:
Flyinghead 2019-02-16 16:42:18 +01:00
parent dcbdf3a59d
commit a0fbc91be3
11 changed files with 8 additions and 2871 deletions

View File

@ -430,24 +430,6 @@ public class MainActivity extends AppCompatActivity implements
drawer.closeDrawer(GravityCompat.START);
return true;
case R.id.pgconfig_menu:
PGConfigFragment pgconfigFrag = (PGConfigFragment) getSupportFragmentManager()
.findFragmentByTag("PGCONFIG_FRAG");
if (pgconfigFrag != null) {
if (pgconfigFrag.isVisible()) {
drawer.closeDrawer(GravityCompat.START);
return true;
}
}
pgconfigFrag = new PGConfigFragment();
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragment_container, pgconfigFrag, "PGCONFIG_FRAG")
.addToBackStack(null).commit();
setTitle(R.string.pgconfig);
drawer.closeDrawer(GravityCompat.START);
return true;
case R.id.input_menu:
InputFragment inputFrag = (InputFragment) getSupportFragmentManager()
.findFragmentByTag("INPUT_FRAG");

View File

@ -1,52 +1,32 @@
package com.reicast.emulator.config;
import android.Manifest;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.os.Vibrator;
import android.preference.PreferenceManager;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.InputDevice;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import com.reicast.emulator.Emulator;
import com.reicast.emulator.R;
import com.reicast.emulator.periph.Gamepad;
import java.io.File;
public class InputFragment extends Fragment {
private static final int PERMISSION_REQUEST = 1001;
private OnClickListener mCallback;
private int listenForButton = 0;
private AlertDialog alertDialogSelectController;
private SharedPreferences mPrefs;
private CompoundButton switchTouchVibrationEnabled;
@ -99,23 +79,6 @@ public class InputFragment extends Fragment {
Config.vibrationDuration = mPrefs.getInt(Config.pref_vibrationDuration, 20);
vib = (Vibrator) getActivity().getSystemService(Context.VIBRATOR_SERVICE);
try {
ImageView icon_a = (ImageView) getView().findViewById(
R.id.controller_icon_a);
icon_a.setAlpha(0.8f);
ImageView icon_b = (ImageView) getView().findViewById(
R.id.controller_icon_b);
icon_b.setAlpha(0.8f);
ImageView icon_c = (ImageView) getView().findViewById(
R.id.controller_icon_c);
icon_c.setAlpha(0.8f);
ImageView icon_d = (ImageView) getView().findViewById(
R.id.controller_icon_d);
icon_d.setAlpha(0.8f);
} catch (NullPointerException ex) {
// Couldn't find images, so leave them opaque
}
Button buttonLaunchEditor = (Button) getView().findViewById(R.id.buttonLaunchEditor);
buttonLaunchEditor.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
@ -171,95 +134,6 @@ public class InputFragment extends Fragment {
switchTouchVibrationEnabled.setChecked(false);
}
switchTouchVibrationEnabled.setOnCheckedChangeListener(touch_vibration);
CompoundButton micPluggedIntoController = (CompoundButton) getView().findViewById(R.id.micEnabled);
boolean micPluggedIn = Emulator.micPluggedIn();
micPluggedIntoController.setChecked(micPluggedIn);
micPluggedIntoController.setEnabled(false);
Button buttonKeycodeEditor = (Button) getView().findViewById(
R.id.buttonKeycodeEditor);
buttonKeycodeEditor.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
InputModFragment inputModFrag = new InputModFragment();
getActivity()
.getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment_container, inputModFrag, "INPUT_MOD_FRAG")
.addToBackStack(null).commit();
}
});
Button buttonSelectControllerPlayer1 = (Button) getView()
.findViewById(R.id.buttonSelectControllerPlayer1);
buttonSelectControllerPlayer1
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
selectController(1);
}
});
Button buttonSelectControllerPlayer2 = (Button) getView()
.findViewById(R.id.buttonSelectControllerPlayer2);
buttonSelectControllerPlayer2
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
selectController(2);
}
});
Button buttonSelectControllerPlayer3 = (Button) getView()
.findViewById(R.id.buttonSelectControllerPlayer3);
buttonSelectControllerPlayer3
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
selectController(3);
}
});
Button buttonSelectControllerPlayer4 = (Button) getView()
.findViewById(R.id.buttonSelectControllerPlayer4);
buttonSelectControllerPlayer4
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
selectController(4);
}
});
Button buttonRemoveControllerPlayer1 = (Button) getView()
.findViewById(R.id.buttonRemoveControllerPlayer1);
buttonRemoveControllerPlayer1
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
removeController(1);
}
});
Button buttonRemoveControllerPlayer2 = (Button) getView()
.findViewById(R.id.buttonRemoveControllerPlayer2);
buttonRemoveControllerPlayer2
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
removeController(2);
}
});
Button buttonRemoveControllerPlayer3 = (Button) getView()
.findViewById(R.id.buttonRemoveControllerPlayer3);
buttonRemoveControllerPlayer3
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
removeController(3);
}
});
Button buttonRemoveControllerPlayer4 = (Button) getView()
.findViewById(R.id.buttonRemoveControllerPlayer4);
buttonRemoveControllerPlayer4
.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
removeController(4);
}
});
updateControllers();
updateVibration();
}
@ -275,339 +149,4 @@ public class InputFragment extends Fragment {
switchTouchVibrationEnabled.setChecked(touchVibrationEnabled);
}
private void updateControllers() {
String deviceDescriptorPlayer1 = mPrefs.getString(Gamepad.pref_player1, null);
String deviceDescriptorPlayer2 = mPrefs.getString(Gamepad.pref_player2, null);
String deviceDescriptorPlayer3 = mPrefs.getString(Gamepad.pref_player3, null);
String deviceDescriptorPlayer4 = mPrefs.getString(Gamepad.pref_player4, null);
String labelPlayer1 = null, labelPlayer2 = null, labelPlayer3 = null, labelPlayer4 = null;
for (int devideId : InputDevice.getDeviceIds()) {
InputDevice dev = InputDevice.getDevice(devideId);
String descriptor = dev.getDescriptor();
if (descriptor != null) {
if (descriptor.equals(deviceDescriptorPlayer1))
labelPlayer1 = dev.getName() + " (" + descriptor + ")";
else if (descriptor.equals(deviceDescriptorPlayer2))
labelPlayer2 = dev.getName() + " (" + descriptor + ")";
else if (descriptor.equals(deviceDescriptorPlayer3))
labelPlayer3 = dev.getName() + " (" + descriptor + ")";
else if (descriptor.equals(deviceDescriptorPlayer4))
labelPlayer4 = dev.getName() + " (" + descriptor + ")";
}
}
TextView textViewDeviceDescriptorPlayer1 = (TextView) getView()
.findViewById(R.id.textViewDeviceDescriptorPlayer1);
Button buttonRemoveControllerPlayer1 = (Button) getView().findViewById(
R.id.buttonRemoveControllerPlayer1);
if (labelPlayer1 != null) {
textViewDeviceDescriptorPlayer1.setText(labelPlayer1);
buttonRemoveControllerPlayer1.setEnabled(true);
} else {
if (deviceDescriptorPlayer1 != null) {
textViewDeviceDescriptorPlayer1.setText(getString(R.string.controller_not_connected,
"(" + deviceDescriptorPlayer1 + ")"));
buttonRemoveControllerPlayer1.setEnabled(true);
} else {
textViewDeviceDescriptorPlayer1
.setText(R.string.controller_none_selected);
buttonRemoveControllerPlayer1.setEnabled(false);
}
}
TextView textViewDeviceDescriptorPlayer2 = (TextView) getView()
.findViewById(R.id.textViewDeviceDescriptorPlayer2);
Button buttonRemoveControllerPlayer2 = (Button) getView().findViewById(
R.id.buttonRemoveControllerPlayer2);
if (labelPlayer2 != null) {
textViewDeviceDescriptorPlayer2.setText(labelPlayer2);
buttonRemoveControllerPlayer2.setEnabled(true);
} else {
if (deviceDescriptorPlayer2 != null) {
textViewDeviceDescriptorPlayer2.setText(getString(R.string.controller_not_connected,
"(" + deviceDescriptorPlayer2 + ")"));
buttonRemoveControllerPlayer2.setEnabled(true);
} else {
textViewDeviceDescriptorPlayer2
.setText(R.string.controller_none_selected);
buttonRemoveControllerPlayer2.setEnabled(false);
}
}
String[] periphs = getResources().getStringArray(R.array.peripherals);
Spinner p2periph1spnr = (Spinner) getView().findViewById(R.id.spnr_player2_periph1);
ArrayAdapter<String> p2periph1Adapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, periphs);
p2periph1Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
p2periph1spnr.setAdapter(p2periph1Adapter);
p2periph1spnr.setSelection(mPrefs.getInt(
Gamepad.p2_peripheral + 1, 0), true);
p2periph1spnr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Gamepad.p2_peripheral + 1, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
Spinner p2periph2spnr = (Spinner) getView().findViewById(R.id.spnr_player2_periph2);
ArrayAdapter<String> p2periph2Adapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, periphs);
p2periph2Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
p2periph2spnr.setAdapter(p2periph2Adapter);
p2periph2spnr.setSelection(mPrefs.getInt(
Gamepad.p2_peripheral + 2, 0), true);
p2periph2spnr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Gamepad.p2_peripheral + 2, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
TextView textViewDeviceDescriptorPlayer3 = (TextView) getView()
.findViewById(R.id.textViewDeviceDescriptorPlayer3);
Button buttonRemoveControllerPlayer3 = (Button) getView().findViewById(
R.id.buttonRemoveControllerPlayer3);
if (labelPlayer3 != null) {
textViewDeviceDescriptorPlayer3.setText(labelPlayer3);
buttonRemoveControllerPlayer3.setEnabled(true);
} else {
if (deviceDescriptorPlayer3 != null) {
textViewDeviceDescriptorPlayer3.setText(getString(R.string.controller_not_connected,
"(" + deviceDescriptorPlayer3 + ")"));
buttonRemoveControllerPlayer3.setEnabled(true);
} else {
textViewDeviceDescriptorPlayer3
.setText(R.string.controller_none_selected);
buttonRemoveControllerPlayer3.setEnabled(false);
}
}
Spinner p3periph1spnr = (Spinner) getView().findViewById(R.id.spnr_player3_periph1);
ArrayAdapter<String> p3periph1Adapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, periphs);
p3periph1Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
p3periph1spnr.setAdapter(p3periph1Adapter);
p3periph1spnr.setSelection(mPrefs.getInt(
Gamepad.p3_peripheral + 1, 0), true);
p3periph1spnr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Gamepad.p3_peripheral + 1, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
Spinner p3periph2spnr = (Spinner) getView().findViewById(R.id.spnr_player3_periph2);
ArrayAdapter<String> p3periph2Adapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, periphs);
p3periph2Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
p3periph2spnr.setAdapter(p3periph2Adapter);
p3periph2spnr.setSelection(mPrefs.getInt(
Gamepad.p3_peripheral + 2, 0), true);
p3periph2spnr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Gamepad.p3_peripheral + 2, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
TextView textViewDeviceDescriptorPlayer4 = (TextView) getView()
.findViewById(R.id.textViewDeviceDescriptorPlayer4);
Button buttonRemoveControllerPlayer4 = (Button) getView().findViewById(
R.id.buttonRemoveControllerPlayer4);
if (labelPlayer4 != null) {
textViewDeviceDescriptorPlayer4.setText(labelPlayer4);
buttonRemoveControllerPlayer4.setEnabled(true);
} else {
if (deviceDescriptorPlayer4 != null) {
textViewDeviceDescriptorPlayer4.setText(getString(R.string.controller_not_connected,
"(" + deviceDescriptorPlayer4 + ")"));
buttonRemoveControllerPlayer4.setEnabled(true);
} else {
textViewDeviceDescriptorPlayer4
.setText(R.string.controller_none_selected);
buttonRemoveControllerPlayer4.setEnabled(false);
}
}
Spinner p4periph1spnr = (Spinner) getView().findViewById(R.id.spnr_player4_periph1);
ArrayAdapter<String> p4periph1Adapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, periphs);
p4periph1Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
p4periph1spnr.setAdapter(p4periph1Adapter);
String p4periph1 = String.valueOf(mPrefs.getInt(Gamepad.p4_peripheral + 1, 0));
p4periph1spnr.setSelection(p2periph2Adapter.getPosition(p4periph1), true);
p4periph1spnr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Gamepad.p4_peripheral + 1, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
Spinner p4periph2spnr = (Spinner) getView().findViewById(R.id.spnr_player4_periph2);
ArrayAdapter<String> p4periph2Adapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, periphs);
p4periph2Adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
p4periph2spnr.setAdapter(p4periph2Adapter);
String p4periph2 = String.valueOf(mPrefs.getInt(Gamepad.p4_peripheral + 2, 0));
p4periph2spnr.setSelection(p2periph2Adapter.getPosition(p4periph2), true);
p4periph2spnr.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Gamepad.p4_peripheral + 2, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
}
private void selectController(int playerNum) {
listenForButton = playerNum;
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.select_controller_title);
builder.setMessage(getString(R.string.select_controller_message,
String.valueOf(listenForButton)));
builder.setPositiveButton(R.string.cancel,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
listenForButton = 0;
dialog.dismiss();
}
});
builder.setNegativeButton(R.string.manual,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
InputModFragment inputModFrag = new InputModFragment();
Bundle args = new Bundle();
args.putInt("portNumber", listenForButton - 1);
inputModFrag.setArguments(args);
listenForButton = 0;
getActivity()
.getSupportFragmentManager()
.beginTransaction()
.replace(R.id.fragment_container, inputModFrag,
"INPUT_MOD_FRAG").addToBackStack(null)
.commit();
dialog.dismiss();
}
});
builder.setOnKeyListener(new Dialog.OnKeyListener() {
public boolean onKey(DialogInterface dialog, int keyCode,
KeyEvent event) {
return mapDevice(keyCode, event);
}
});
alertDialogSelectController = builder.create();
alertDialogSelectController.show();
}
private boolean mapDevice(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_MENU
|| keyCode == KeyEvent.KEYCODE_VOLUME_UP
|| keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)
return false;
if (keyCode == KeyEvent.KEYCODE_BACK)
return false;
String descriptor = InputDevice.getDevice(event.getDeviceId()).getDescriptor();
if (descriptor == null)
return false;
String deviceDescriptorPlayer1 = mPrefs.getString(Gamepad.pref_player1, null);
String deviceDescriptorPlayer2 = mPrefs.getString(Gamepad.pref_player2, null);
String deviceDescriptorPlayer3 = mPrefs.getString(Gamepad.pref_player3, null);
String deviceDescriptorPlayer4 = mPrefs.getString(Gamepad.pref_player4, null);
if (descriptor.equals(deviceDescriptorPlayer1)
|| descriptor.equals(deviceDescriptorPlayer2)
|| descriptor.equals(deviceDescriptorPlayer3)
|| descriptor.equals(deviceDescriptorPlayer4)) {
Toast.makeText(getActivity(), R.string.controller_already_in_use,
Toast.LENGTH_SHORT).show();
return true;
}
switch (listenForButton) {
case 0:
return false;
case 1:
mPrefs.edit().putString(Gamepad.pref_player1, descriptor).apply();
break;
case 2:
mPrefs.edit().putString(Gamepad.pref_player2, descriptor).apply();
break;
case 3:
mPrefs.edit().putString(Gamepad.pref_player3, descriptor).apply();
break;
case 4:
mPrefs.edit().putString(Gamepad.pref_player4, descriptor).apply();
break;
}
Log.d("New port " + listenForButton + " controller:", descriptor);
listenForButton = 0;
alertDialogSelectController.cancel();
updateControllers();
return true;
}
private void removeController(int playerNum) {
switch (playerNum) {
case 1:
mPrefs.edit().putString(Gamepad.pref_player1, null).apply();
break;
case 2:
mPrefs.edit().putString(Gamepad.pref_player2, null).apply();
break;
case 3:
mPrefs.edit().putString(Gamepad.pref_player3, null).apply();
break;
case 4:
mPrefs.edit().putString(Gamepad.pref_player4, null).apply();
break;
}
updateControllers();
}
}

View File

@ -29,8 +29,6 @@ import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;
import android.widget.Spinner;
import android.widget.TextView;
@ -53,7 +51,6 @@ import java.io.OutputStream;
import java.lang.ref.WeakReference;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
public class OptionsFragment extends Fragment {
@ -171,17 +168,6 @@ public class OptionsFragment extends Fragment {
}
});
OnCheckedChangeListener reios_options = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_usereios, isChecked).apply();
}
};
CompoundButton reios_opt = (CompoundButton) getView().findViewById(R.id.reios_option);
reios_opt.setChecked(mPrefs.getBoolean(Emulator.pref_usereios, false));
reios_opt.setOnCheckedChangeListener(reios_options);
OnCheckedChangeListener details_options = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
@ -260,260 +246,6 @@ public class OptionsFragment extends Fragment {
});
OnCheckedChangeListener dynarec_options = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_dynarecopt, isChecked).apply();
}
};
CompoundButton dynarec_opt = (CompoundButton) getView().findViewById(R.id.dynarec_option);
dynarec_opt.setChecked(Emulator.dynarecopt);
dynarec_opt.setOnCheckedChangeListener(dynarec_options);
OnCheckedChangeListener safemode_option = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_dynsafemode, isChecked).apply();
}
};
CompoundButton safemode_opt = (CompoundButton) getView().findViewById(R.id.dynarec_safemode);
safemode_opt.setChecked(mPrefs.getBoolean(Emulator.pref_dynsafemode, Emulator.dynsafemode));
safemode_opt.setOnCheckedChangeListener(safemode_option);
OnCheckedChangeListener unstable_option = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_unstable, isChecked).apply();
}
};
CompoundButton unstable_opt = (CompoundButton) getView().findViewById(R.id.unstable_option);
unstable_opt.setChecked(mPrefs.getBoolean(Emulator.pref_unstable, Emulator.unstableopt));
unstable_opt.setOnCheckedChangeListener(unstable_option);
String[] cables = getResources().getStringArray(R.array.cable);
Spinner cable_spnr = (Spinner) getView().findViewById(R.id.cable_spinner);
ArrayAdapter<String> cableAdapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, cables);
cableAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
cable_spnr.setAdapter(cableAdapter);
int selectedItem = mPrefs.getInt(Emulator.pref_cable, Emulator.cable);
if (selectedItem > 0)
selectedItem--;
cable_spnr.setSelection(selectedItem, true);
cable_spnr.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view,
int pos, long id) {
mPrefs.edit().putInt(Emulator.pref_cable, pos > 0 ? pos + 1 : pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
String[] regions = getResources().getStringArray(R.array.region);
Spinner region_spnr = (Spinner) getView().findViewById(R.id.region_spinner);
ArrayAdapter<String> regionAdapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, regions);
regionAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
region_spnr.setAdapter(regionAdapter);
region_spnr.setSelection(mPrefs.getInt(Emulator.pref_dcregion, Emulator.dcregion), true);
region_spnr.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Emulator.pref_dcregion, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
String[] broadcasts = getResources().getStringArray(R.array.broadcast);
Spinner broadcast_spnr = (Spinner) getView().findViewById(R.id.broadcast_spinner);
ArrayAdapter<String> broadcastAdapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, broadcasts);
broadcastAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
broadcast_spnr.setAdapter(broadcastAdapter);
broadcast_spnr.setSelection(Math.min(mPrefs.getInt(Emulator.pref_broadcast, Emulator.broadcast), broadcast_spnr.getCount() - 1), true);
broadcast_spnr.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Emulator.pref_broadcast, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
String[] languages = getResources().getStringArray(R.array.languages);
Spinner language_spnr = (Spinner) getView().findViewById(R.id.language_spinner);
ArrayAdapter<String> languageAdapter = new ArrayAdapter<>(
getActivity(), R.layout.spinner_selected, languages);
languageAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
language_spnr.setAdapter(languageAdapter);
language_spnr.setSelection(Math.min(mPrefs.getInt(Emulator.pref_language, Emulator.language), language_spnr.getCount() - 1), true);
language_spnr.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
mPrefs.edit().putInt(Emulator.pref_language, pos).apply();
}
public void onNothingSelected(AdapterView<?> arg0) {
}
});
OnCheckedChangeListener limitfps_option = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_limitfps, isChecked).apply();
}
};
CompoundButton limit_fps = (CompoundButton) getView().findViewById(R.id.limitfps_option);
limit_fps.setChecked(mPrefs.getBoolean(Emulator.pref_limitfps, Emulator.limitfps));
limit_fps.setOnCheckedChangeListener(limitfps_option);
OnCheckedChangeListener mipmaps_option = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_mipmaps, isChecked).apply();
}
};
CompoundButton mipmap_opt = (CompoundButton) getView().findViewById(R.id.mipmaps_option);
mipmap_opt.setChecked(mPrefs.getBoolean(Emulator.pref_mipmaps, Emulator.mipmaps));
mipmap_opt.setOnCheckedChangeListener(mipmaps_option);
OnCheckedChangeListener full_screen = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_widescreen, isChecked).apply();
}
};
CompoundButton stretch_view = (CompoundButton) getView().findViewById(R.id.stretch_option);
stretch_view.setChecked(mPrefs.getBoolean(Emulator.pref_widescreen, Emulator.widescreen));
stretch_view.setOnCheckedChangeListener(full_screen);
int frameskip = mPrefs.getInt(Emulator.pref_frameskip, Emulator.frameskip);
final EditText mainFrames = (EditText) getView().findViewById(R.id.current_frames);
mainFrames.setText(String.valueOf(frameskip));
final SeekBar frameSeek = (SeekBar) getView().findViewById(R.id.frame_seekbar);
frameSeek.setProgress(frameskip);
frameSeek.setIndeterminate(false);
frameSeek.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
mainFrames.setText(String.valueOf(progress));
}
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
public void onStopTrackingTouch(SeekBar seekBar) {
int progress = seekBar.getProgress();
mPrefs.edit().putInt(Emulator.pref_frameskip, progress).apply();
}
});
mainFrames.setOnEditorActionListener(new EditText.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE
|| (event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER
&& event.getAction() == KeyEvent.ACTION_DOWN)) {
if (event == null || !event.isShiftPressed()) {
if (v.getText() != null) {
int frames = Integer.parseInt(v.getText().toString());
frameSeek.setProgress(frames);
mPrefs.edit().putInt(Emulator.pref_frameskip, frames).apply();
}
hideSoftKeyBoard();
return true;
}
}
return false;
}
});
OnCheckedChangeListener synchronous = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_syncedrender, isChecked).apply();
}
};
CompoundButton synced_render = (CompoundButton) getView().findViewById(R.id.syncrender_option);
synced_render.setChecked(mPrefs.getBoolean(Emulator.pref_syncedrender, Emulator.syncedrender));
synced_render.setOnCheckedChangeListener(synchronous);
OnCheckedChangeListener customtex = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_customtextures, isChecked).apply();
}
};
CompoundButton custom_textures = (CompoundButton) getView().findViewById(R.id.customtex_option);
custom_textures.setChecked(mPrefs.getBoolean(Emulator.pref_customtextures, Emulator.customtextures));
custom_textures.setOnCheckedChangeListener(customtex);
final EditText bootdiskEdit = (EditText) getView().findViewById(R.id.boot_disk);
bootdiskEdit.setText(mPrefs.getString(Emulator.pref_bootdisk, Emulator.bootdisk));
bootdiskEdit.setOnEditorActionListener(new EditText.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE
|| (event != null && event.getKeyCode() == KeyEvent.KEYCODE_ENTER
&& event.getAction() == KeyEvent.ACTION_DOWN)) {
if (event == null || !event.isShiftPressed()) {
String disk = null;
if (v.getText() != null) {
disk = v.getText().toString();
if (disk.equals("") || disk.substring(
disk.lastIndexOf("/") + 1).length() == 0) {
disk = null;
} else {
if (!disk.contains("/"))
disk = game_directory + "/" + disk;
if (!new File(disk).exists())
disk = null;
}
v.setText(disk);
}
if (disk == null)
mPrefs.edit().remove(Emulator.pref_bootdisk).apply();
else
mPrefs.edit().putString(Emulator.pref_bootdisk, disk).apply();
hideSoftKeyBoard();
return true;
}
}
return false;
}
});
final CompoundButton fps_opt = (CompoundButton) getView().findViewById(R.id.fps_option);
OnCheckedChangeListener fps_options = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_showfps, isChecked).apply();
}
};
boolean counter = mPrefs.getBoolean(Emulator.pref_showfps, false);
fps_opt.setChecked(counter);
fps_opt.setOnCheckedChangeListener(fps_options);
CompoundButton force_software_opt = (CompoundButton) getView().findViewById(
R.id.software_option);
OnCheckedChangeListener force_software = new OnCheckedChangeListener() {
@ -527,28 +259,6 @@ public class OptionsFragment extends Fragment {
force_software_opt.setChecked(software == GL2JNIView.LAYER_TYPE_SOFTWARE);
force_software_opt.setOnCheckedChangeListener(force_software);
CompoundButton sound_opt = (CompoundButton) getView().findViewById(R.id.sound_option);
OnCheckedChangeListener emu_sound = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_nosound, isChecked).apply();
}
};
boolean sound = mPrefs.getBoolean(Emulator.pref_nosound, false);
sound_opt.setChecked(sound);
sound_opt.setOnCheckedChangeListener(emu_sound);
CompoundButton dsp_opt = (CompoundButton) getView().findViewById(R.id.dsp_option);
OnCheckedChangeListener emu_dsp = new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
mPrefs.edit().putBoolean(Emulator.pref_nobatch, isChecked).apply();
}
};
boolean dsp = mPrefs.getBoolean(Emulator.pref_nobatch, true);
dsp_opt.setChecked(dsp);
dsp_opt.setOnCheckedChangeListener(emu_dsp);
String[] depths = getResources().getStringArray(R.array.depth);
Spinner depth_spnr = (Spinner) getView().findViewById(R.id.depth_spinner);

View File

@ -512,7 +512,7 @@ public class GL2JNIView extends GLSurfaceView
int joyy = get_anal(11, 1);
InputDeviceManager.getInstance().virtualGamepadEvent(rv, joyx, joyy, left_trigger, right_trigger);
// Only register the mouse event if no virtual gamepad button is down
if (rv == 0xFFFF)
if (!editVjoyMode && rv == 0xFFFF)
InputDeviceManager.getInstance().mouseEvent(mouse_pos[0], mouse_pos[1], mouse_btns);
return(true);
}

View File

@ -31,7 +31,7 @@ JNIEXPORT type JNICALL Java_com_reicast_emulator_emu_JNIdc_get ## jsetting(JNIEn
} \
JNIEXPORT void JNICALL Java_com_reicast_emulator_emu_JNIdc_set ## jsetting(JNIEnv *env, jobject obj, type v) \
{ \
settings.csetting = v; \
/* settings.csetting = v; */ \
}
extern "C"
@ -655,7 +655,7 @@ void os_DebugBreak()
// Attach debugger here to figure out what went wrong
for(;;) ;
}
/*
void SaveSettings()
{
JVMAttacher attacher;
@ -695,6 +695,7 @@ void LoadCustom()
attacher.env->CallVoidMethod(g_emulator, loadGameConfigurationMid, jreios_id);
}
*/
JNIEXPORT void JNICALL Java_com_reicast_emulator_periph_InputDeviceManager_joystickAdded(JNIEnv *env, jobject obj, jint id, jstring name, jint maple_port)
{

View File

@ -81,40 +81,6 @@
</LinearLayout>
</LinearLayout>
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:stretchColumns="*" >
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/reios_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_reios" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/reios_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="match_parent"
@ -217,205 +183,6 @@
android:layout_marginLeft="6dp"
android:stretchColumns="*" >
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/safemode_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_safemode" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/dynarec_safemode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/unstable_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_unstable" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/unstable_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/mipmaps_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_mipmaps" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/mipmaps_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/stretch_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_stretch" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/stretch_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/frameskip_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:text="@string/set_frameskip" />
<EditText
android:id="@+id/current_frames"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_weight="1"
android:ems="10"
android:gravity="right"
android:inputType="number" >
</EditText>
</TableRow>
<TableRow
android:layout_marginTop="5dp"
android:gravity="center_vertical" >
<SeekBar
android:id="@+id/frame_seekbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="center_vertical|left"
android:max="5"
android:progress="0" />
</TableRow>
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/optimization_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="center_vertical"
android:text="@string/optimization_opts" />
</TableRow>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@drawable/list_item_border" />
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/fps_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_fps" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/fps_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
@ -444,61 +211,6 @@
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/sound_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_sound" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/sound_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/dsp_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_dsp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/dsp_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
@ -529,281 +241,6 @@
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/experimental_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="center_vertical"
android:text="@string/experimental_opts" />
</TableRow>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@drawable/list_item_border" />
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/dynarec_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_dynarec" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/dynarec_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/cable_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_cable" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/cable_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/region_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_region" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/region_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/broadcast_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_broadcast" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/broadcast_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/language_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_language" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/language_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/limitfps_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_limitfps" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/limitfps_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/syncrender_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_syncrender" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/syncrender_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/customtex_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_customtex" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/customtex_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/boot_disk_text"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:text="@string/boot_disk" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<EditText
android:id="@+id/boot_disk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:inputType="text" >
</EditText>
</LinearLayout>
</LinearLayout>
<TableRow
android:layout_marginTop="10dp"

View File

@ -123,491 +123,6 @@
android:layout_marginTop="10dip" />
</LinearLayout>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:layout_marginLeft="4dp"
android:text="@string/customize_physical_controls" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonKeycodeEditor"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="8"
android:text="@string/launch_editor" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="6dp"
android:gravity="center_vertical" >
<ImageView
app:srcCompat="@drawable/mic_icon"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:layout_marginLeft="6dp"
android:text="@string/enable_microphone" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Switch
android:id="@+id/micEnabled"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
</TableLayout>
<TableLayout
android:id="@+id/input_devices"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="*" >
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_a"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_a"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="A"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#ff0000"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_a" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<TextView
android:id="@+id/textViewPeripheralsPlayer1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginLeft="5dp"
android:ems="10"
android:text="@string/controller_1_vmu" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_b"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_b"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="B"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#0000ff"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_b" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<Spinner
android:id="@+id/spnr_player2_periph1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
<Spinner
android:id="@+id/spnr_player2_periph2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_c"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_c"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="C"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#ffff00"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_c" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<Spinner
android:id="@+id/spnr_player3_periph1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
<Spinner
android:id="@+id/spnr_player3_periph2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_d"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_d"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="D"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#00ff00"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_d" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<Spinner
android:id="@+id/spnr_player4_periph1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
<Spinner
android:id="@+id/spnr_player4_periph2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
</TableLayout>
</LinearLayout>

View File

@ -80,41 +80,6 @@
android:text="@string/browse" />
</LinearLayout>
</LinearLayout>
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:stretchColumns="*" >
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/reios_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_reios" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/reios_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
</TableLayout>
<LinearLayout
android:layout_width="match_parent"
@ -217,205 +182,6 @@
android:layout_marginLeft="6dp"
android:stretchColumns="*" >
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/safemode_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_safemode" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/dynarec_safemode"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/unstable_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_unstable" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/unstable_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/mipmaps_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_mipmaps" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/mipmaps_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/stretch_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_stretch" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/stretch_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/frameskip_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:text="@string/set_frameskip" />
<EditText
android:id="@+id/current_frames"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_weight="1"
android:ems="10"
android:gravity="right"
android:inputType="number" >
</EditText>
</TableRow>
<TableRow
android:layout_marginTop="5dp"
android:gravity="center_vertical" >
<SeekBar
android:id="@+id/frame_seekbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="center_vertical|left"
android:max="5"
android:progress="0" />
</TableRow>
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/optimization_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="center_vertical"
android:text="@string/optimization_opts" />
</TableRow>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@drawable/list_item_border" />
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/fps_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_fps" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/fps_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
@ -444,62 +210,6 @@
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/sound_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_sound" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/sound_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/dsp_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_dsp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/dsp_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
@ -529,282 +239,6 @@
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/experimental_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="center_vertical"
android:text="@string/experimental_opts" />
</TableRow>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="@drawable/list_item_border" />
<TableRow
android:layout_marginTop="20dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/dynarec_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_dynarec" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/dynarec_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/cable_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_cable" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/cable_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/region_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_region" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/region_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/broadcast_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_broadcast" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/broadcast_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/language_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_language" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Spinner
android:id="@+id/language_spinner"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="10" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/limitfps_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_limitfps" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/limitfps_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/syncrender_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_syncrender" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/syncrender_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >
<TextView
android:id="@+id/customtex_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:text="@string/select_customtex" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/customtex_option"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="vertical" >
<TextView
android:id="@+id/boot_disk_text"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:layout_weight="1"
android:text="@string/boot_disk" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<EditText
android:id="@+id/boot_disk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:inputType="text" >
</EditText>
</LinearLayout>
</LinearLayout>
<TableRow
android:layout_marginTop="10dp"
android:gravity="center_vertical" >

View File

@ -123,491 +123,6 @@
android:layout_marginTop="10dip" />
</LinearLayout>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:layout_marginLeft="4dp"
android:text="@string/customize_physical_controls" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonKeycodeEditor"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:ems="8"
android:text="@string/launch_editor" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="6dp"
android:gravity="center_vertical" >
<ImageView
app:srcCompat="@drawable/mic_icon"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:ems="10"
android:gravity="center_vertical|left"
android:layout_marginLeft="6dp"
android:text="@string/enable_microphone" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Checkbox
android:id="@+id/micEnabled"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="true" />
</LinearLayout>
</TableRow>
</TableLayout>
<TableLayout
android:id="@+id/input_devices"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="*" >
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_a"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_a"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="A"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#ff0000"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_a" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<TextView
android:id="@+id/textViewPeripheralsPlayer1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginLeft="5dp"
android:ems="10"
android:text="@string/controller_1_vmu" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_b"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_b"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="B"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#0000ff"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_b" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<Spinner
android:id="@+id/spnr_player2_periph1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
<Spinner
android:id="@+id/spnr_player2_periph2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_c"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_c"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="C"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#ffff00"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_c" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<Spinner
android:id="@+id/spnr_player3_periph1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
<Spinner
android:id="@+id/spnr_player3_periph2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
<TableRow
android:layout_marginTop="25dp"
android:gravity="center_vertical" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginLeft="6dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/controller_icon_d"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerInParent="true"
android:scaleType="fitCenter"
app:srcCompat="@drawable/input" />
<TextView
android:id="@+id/controller_text_d"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="D"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#00ff00"
android:textIsSelectable="false"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="6dp"
android:layout_weight="1"
android:orientation="vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_d" />
<TextView
android:id="@+id/textViewDeviceDescriptorPlayer4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:text="@string/controller_none_selected" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal" >
<Spinner
android:id="@+id/spnr_player4_periph1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
<Spinner
android:id="@+id/spnr_player4_periph2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="6"
android:entries="@array/peripherals" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right"
android:orientation="vertical" >
<Button
android:id="@+id/buttonSelectControllerPlayer4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/select" />
<Button
android:id="@+id/buttonRemoveControllerPlayer4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="6"
android:text="@string/remove" />
</LinearLayout>
</TableRow>
</TableLayout>
</LinearLayout>

View File

@ -14,10 +14,12 @@
android:id="@+id/input_menu"
android:icon="@drawable/ic_input"
android:title="@string/input" />
<!--
<item
android:id="@+id/pgconfig_menu"
android:icon="@drawable/ic_settings"
android:title="@string/pgconfig" />
-->
<item
android:id="@+id/cloud_menu"
android:icon="@drawable/ic_cloud_queue"

View File

@ -10,9 +10,11 @@
<item android:title="@string/input"
android:id="@+id/input_menu"
android:icon="@mipmap/menu_input" />
<!--
<item android:title="@string/pgconfig"
android:id="@+id/pgconfig_menu"
android:icon="@mipmap/menu_config" />
-->
<item android:title="@string/cloud"
android:id="@+id/cloud_menu"
android:icon="@mipmap/menu_cloud" />