ScanSettingsAdvanceDensityActivity.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package epson.scan.activity;
  2. import android.content.Context;
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.widget.SeekBar;
  7. import android.widget.Switch;
  8. import android.widget.TextView;
  9. import androidx.annotation.NonNull;
  10. import androidx.annotation.Nullable;
  11. import epson.common.Constants;
  12. import epson.print.ActivityIACommon;
  13. import epson.print.R;
  14. public class ScanSettingsAdvanceDensityActivity extends ActivityIACommon {
  15. private static final int DEFAULT_DENSITY = 128;
  16. private static final String PARAM_KEY_DENSITY = "SCAN_SETTINGS_LAST_DENSITY";
  17. private static final String PARAM_KEY_DENSITY_STATUS = "SCAN_SETTINGS_LAST_DENSITY_STATUS";
  18. private boolean densityStatus;
  19. private int densityValue;
  20. private SeekBar.OnSeekBarChangeListener mSeekDensityChangeListener = new SeekBar.OnSeekBarChangeListener() {
  21. public void onStartTrackingTouch(SeekBar seekBar) {
  22. }
  23. public void onStopTrackingTouch(SeekBar seekBar) {
  24. }
  25. public void onProgressChanged(SeekBar seekBar, int i, boolean z) {
  26. int unused = ScanSettingsAdvanceDensityActivity.this.densityValue = 255 - i;
  27. ScanSettingsAdvanceDensityActivity.this.tvDensityValue.setText(String.format(Constants.DENSITY_VALUE, new Object[]{Integer.valueOf(255 - ScanSettingsAdvanceDensityActivity.this.densityValue)}));
  28. }
  29. };
  30. private View.OnClickListener mToogleDensityListener = new View.OnClickListener() {
  31. public void onClick(View view) {
  32. ScanSettingsAdvanceDensityActivity scanSettingsAdvanceDensityActivity = ScanSettingsAdvanceDensityActivity.this;
  33. boolean unused = scanSettingsAdvanceDensityActivity.densityStatus = scanSettingsAdvanceDensityActivity.toggleDensity.isChecked();
  34. if (!densityStatus) {
  35. ScanSettingsAdvanceDensityActivity.this.seekDensity.setProgress(127);
  36. ScanSettingsAdvanceDensityActivity.this.seekDensity.setEnabled(false);
  37. return;
  38. }
  39. ScanSettingsAdvanceDensityActivity.this.seekDensity.setEnabled(true);
  40. }
  41. };
  42. private SeekBar seekDensity;
  43. private Switch toggleDensity;
  44. private TextView tvDensityValue;
  45. protected void onCreate(Bundle bundle) {
  46. super.onCreate(bundle);
  47. setContentView(R.layout.scan_settings_advance_density);
  48. setActionBar(R.string.brightness, true);
  49. Bundle extras = getIntent().getExtras();
  50. extras.getInt(Constants.SCAN_SETTINGS_DETAIL_TITLE);
  51. densityValue = extras.getInt(PARAM_KEY_DENSITY);
  52. densityStatus = extras.getBoolean(PARAM_KEY_DENSITY_STATUS);
  53. seekDensity = (SeekBar) findViewById(R.id.seekDensity);
  54. seekDensity.setProgress(densityValue);
  55. seekDensity.setOnSeekBarChangeListener(mSeekDensityChangeListener);
  56. tvDensityValue = (TextView) findViewById(R.id.tvDensityValue);
  57. tvDensityValue.setText(String.format(Constants.DENSITY_VALUE, new Object[]{String.valueOf(255 - densityValue)}));
  58. seekDensity.setProgress(255 - densityValue);
  59. toggleDensity = (Switch) findViewById(R.id.toggleDensity);
  60. toggleDensity.setChecked(densityStatus);
  61. toggleDensity.setOnClickListener(mToogleDensityListener);
  62. if (!toggleDensity.isChecked()) {
  63. seekDensity.setEnabled(false);
  64. } else {
  65. seekDensity.setEnabled(true);
  66. }
  67. }
  68. public void onBackPressed() {
  69. Intent intent = getIntent();
  70. intent.putExtra(PARAM_KEY_DENSITY, densityValue);
  71. intent.putExtra(PARAM_KEY_DENSITY_STATUS, densityStatus);
  72. setResult(-1, intent);
  73. finish();
  74. super.onBackPressed();
  75. }
  76. @NonNull
  77. public static Intent getStartIntent(@NonNull Context context, int i, boolean z) {
  78. Intent intent = new Intent(context, ScanSettingsAdvanceDensityActivity.class);
  79. intent.putExtra(PARAM_KEY_DENSITY, i);
  80. intent.putExtra(PARAM_KEY_DENSITY_STATUS, z);
  81. return intent;
  82. }
  83. public static int getDensityFromReturnIntent(@Nullable Intent intent) {
  84. if (intent == null) {
  85. return 128;
  86. }
  87. return intent.getIntExtra(PARAM_KEY_DENSITY, 128);
  88. }
  89. public static boolean getChangeAble(@Nullable Intent intent) {
  90. if (intent == null) {
  91. return false;
  92. }
  93. return intent.getBooleanExtra(PARAM_KEY_DENSITY_STATUS, false);
  94. }
  95. }