PrinterInfoDetail.java 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310
  1. package epson.print.screen;
  2. import android.content.Intent;
  3. import android.os.Bundle;
  4. import android.os.Handler;
  5. import android.os.Message;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.AdapterView;
  9. import android.widget.ListView;
  10. import com.epson.mobilephone.common.escpr.MediaInfo;
  11. import epson.common.Constants;
  12. import epson.print.ActivityIACommon;
  13. import epson.print.R;
  14. import epson.print.Util.EPLog;
  15. import epson.print.screen.PrintSetting;
  16. import epson.print.widgets.AbstractListBuilder;
  17. import epson.print.widgets.CommonDataKinds;
  18. import epson.print.widgets.LayoutEx;
  19. import epson.print.widgets.PrinterInfoDetailBuilder;
  20. public class PrinterInfoDetail extends ActivityIACommon {
  21. private final int GET_BORDER = 3;
  22. private final int GET_COLOR = 6;
  23. private final int GET_DUPLEX = 7;
  24. private final int GET_FEED_DIRECTION = 8;
  25. private final int GET_PAPER_SIZE = 1;
  26. private final int GET_PAPER_SOURCE = 5;
  27. private final int GET_PAPER_TYPE = 2;
  28. private final int GET_PRINTDATE = 18;
  29. private final int GET_QUALITY = 4;
  30. private int[] color_info = null;
  31. private int[] duplex_info = null;
  32. private int[] feed_direction_info = null;
  33. /* renamed from: id */
  34. int f405id;
  35. private int[] info = null;
  36. boolean isDocumentSetting;
  37. private int[] layout_info = null;
  38. AbstractListBuilder mBuilder;
  39. Handler mHandler = new Handler(new Handler.Callback() {
  40. public boolean handleMessage(Message message) {
  41. EPLog.i("handleMessage", "msg.what = " + message.what);
  42. PrinterInfoDetail printerInfoDetail = PrinterInfoDetail.this;
  43. PrintSetting printSetting = new PrintSetting(printerInfoDetail, printerInfoDetail.isDocumentSetting ? PrintSetting.Kind.document : PrintSetting.Kind.photo);
  44. printSetting.loadSettings();
  45. int i = message.what;
  46. if (i != 18) {
  47. switch (i) {
  48. case 1:
  49. if (PrinterInfoDetail.this.paper_size_info == null) {
  50. int[] unused = PrinterInfoDetail.this.info = new int[1];
  51. PrinterInfoDetail.this.info[0] = printSetting.paperSizeValue;
  52. break;
  53. } else {
  54. PrinterInfoDetail printerInfoDetail2 = PrinterInfoDetail.this;
  55. int[] unused2 = printerInfoDetail2.info = new int[printerInfoDetail2.paper_size_info.length];
  56. PrinterInfoDetail printerInfoDetail3 = PrinterInfoDetail.this;
  57. int[] unused3 = printerInfoDetail3.info = printerInfoDetail3.paper_size_info;
  58. break;
  59. }
  60. case 2:
  61. if (PrinterInfoDetail.this.paper_type_info == null) {
  62. int[] unused4 = PrinterInfoDetail.this.info = new int[1];
  63. PrinterInfoDetail.this.info[0] = printSetting.paperTypeValue;
  64. break;
  65. } else {
  66. PrinterInfoDetail printerInfoDetail4 = PrinterInfoDetail.this;
  67. int[] unused5 = printerInfoDetail4.info = new int[printerInfoDetail4.paper_type_info.length];
  68. PrinterInfoDetail printerInfoDetail5 = PrinterInfoDetail.this;
  69. int[] unused6 = printerInfoDetail5.info = printerInfoDetail5.paper_type_info;
  70. break;
  71. }
  72. case 3:
  73. if (PrinterInfoDetail.this.layout_info == null) {
  74. int[] unused7 = PrinterInfoDetail.this.info = new int[1];
  75. PrinterInfoDetail.this.info[0] = printSetting.layoutValue;
  76. break;
  77. } else {
  78. PrinterInfoDetail printerInfoDetail6 = PrinterInfoDetail.this;
  79. int[] unused8 = printerInfoDetail6.info = new int[printerInfoDetail6.layout_info.length];
  80. PrinterInfoDetail printerInfoDetail7 = PrinterInfoDetail.this;
  81. int[] unused9 = printerInfoDetail7.info = printerInfoDetail7.layout_info;
  82. int i2 = 0;
  83. while (true) {
  84. if (i2 >= PrinterInfoDetail.this.info.length) {
  85. break;
  86. } else if (PrinterInfoDetail.this.info[i2] == 8) {
  87. if (PrinterInfoDetail.this.info.length != 1) {
  88. int[] iArr = new int[(PrinterInfoDetail.this.info.length - 1)];
  89. System.arraycopy(PrinterInfoDetail.this.info, 0, iArr, 0, i2);
  90. System.arraycopy(PrinterInfoDetail.this.info, i2 + 1, iArr, i2, (PrinterInfoDetail.this.info.length - 1) - i2);
  91. int[] unused10 = PrinterInfoDetail.this.info = null;
  92. int[] unused11 = PrinterInfoDetail.this.info = iArr;
  93. break;
  94. } else {
  95. int[] unused12 = PrinterInfoDetail.this.info = null;
  96. break;
  97. }
  98. } else {
  99. i2++;
  100. }
  101. }
  102. }
  103. case 4:
  104. EPLog.e("CMV", "Get Quality");
  105. if (PrinterInfoDetail.this.quality_info == null) {
  106. int[] unused13 = PrinterInfoDetail.this.info = new int[1];
  107. PrinterInfoDetail.this.info[0] = printSetting.qualityValue;
  108. break;
  109. } else {
  110. PrinterInfoDetail printerInfoDetail8 = PrinterInfoDetail.this;
  111. int[] unused14 = printerInfoDetail8.info = new int[printerInfoDetail8.quality_info.length];
  112. PrinterInfoDetail printerInfoDetail9 = PrinterInfoDetail.this;
  113. int[] unused15 = printerInfoDetail9.info = printerInfoDetail9.quality_info;
  114. break;
  115. }
  116. case 5:
  117. if (PrinterInfoDetail.this.paper_source_info == null) {
  118. int[] unused16 = PrinterInfoDetail.this.info = new int[1];
  119. PrinterInfoDetail.this.info[0] = printSetting.paperSourceValue;
  120. break;
  121. } else {
  122. PrinterInfoDetail printerInfoDetail10 = PrinterInfoDetail.this;
  123. int[] unused17 = printerInfoDetail10.info = new int[printerInfoDetail10.paper_source_info.length];
  124. PrinterInfoDetail printerInfoDetail11 = PrinterInfoDetail.this;
  125. int[] unused18 = printerInfoDetail11.info = printerInfoDetail11.paper_source_info;
  126. break;
  127. }
  128. case 6:
  129. if (PrinterInfoDetail.this.color_info == null) {
  130. int[] unused19 = PrinterInfoDetail.this.info = new int[1];
  131. PrinterInfoDetail.this.info[0] = printSetting.colorValue;
  132. break;
  133. } else {
  134. PrinterInfoDetail printerInfoDetail12 = PrinterInfoDetail.this;
  135. int[] unused20 = printerInfoDetail12.info = new int[printerInfoDetail12.color_info.length];
  136. PrinterInfoDetail printerInfoDetail13 = PrinterInfoDetail.this;
  137. int[] unused21 = printerInfoDetail13.info = printerInfoDetail13.color_info;
  138. break;
  139. }
  140. case 7:
  141. if (PrinterInfoDetail.this.duplex_info == null) {
  142. int[] unused22 = PrinterInfoDetail.this.info = new int[1];
  143. PrinterInfoDetail.this.info[0] = printSetting.duplexValue;
  144. break;
  145. } else {
  146. PrinterInfoDetail printerInfoDetail14 = PrinterInfoDetail.this;
  147. int[] unused23 = printerInfoDetail14.info = new int[printerInfoDetail14.duplex_info.length];
  148. PrinterInfoDetail printerInfoDetail15 = PrinterInfoDetail.this;
  149. int[] unused24 = printerInfoDetail15.info = printerInfoDetail15.duplex_info;
  150. break;
  151. }
  152. case 8:
  153. int[] unused25 = PrinterInfoDetail.this.info = new int[2];
  154. PrinterInfoDetail.this.info[0] = 0;
  155. PrinterInfoDetail.this.info[1] = 1;
  156. break;
  157. }
  158. } else {
  159. int[] unused26 = PrinterInfoDetail.this.info = new int[4];
  160. PrinterInfoDetail.this.info[0] = 0;
  161. PrinterInfoDetail.this.info[1] = 1;
  162. PrinterInfoDetail.this.info[2] = 2;
  163. PrinterInfoDetail.this.info[3] = 3;
  164. }
  165. if (PrinterInfoDetail.this.info != null) {
  166. ((PrinterInfoDetailBuilder) PrinterInfoDetail.this.mBuilder).addPrinterInfo(PrinterInfoDetail.this.info, PrinterInfoDetail.this.mLookupTable);
  167. }
  168. return true;
  169. }
  170. });
  171. ViewGroup mLayout;
  172. MediaInfo.AbstractInfo mLookupTable;
  173. private int[] paper_size_info = null;
  174. private int[] paper_source_info = null;
  175. private int[] paper_type_info = null;
  176. private int[] printdate_info = null;
  177. private int[] quality_info = null;
  178. private int sizeIndex = 0;
  179. private int typeIndex = 0;
  180. protected void onCreate(Bundle bundle) {
  181. super.onCreate(bundle);
  182. this.f405id = getIntent().getExtras().getInt("ID");
  183. switch (this.f405id) {
  184. case R.id.color /*2131230930*/:
  185. this.color_info = getIntent().getIntArrayExtra(Constants.COLOR_INFO);
  186. break;
  187. case R.id.duplex /*2131231005*/:
  188. this.duplex_info = getIntent().getIntArrayExtra(Constants.DUPLEX_INFO);
  189. break;
  190. case R.id.feed_direction /*2131231037*/:
  191. this.feed_direction_info = getIntent().getIntArrayExtra(Constants.FEED_DIRECTION_INFO);
  192. break;
  193. case R.id.layout /*2131231158*/:
  194. this.layout_info = getIntent().getIntArrayExtra(Constants.LAYOUT_INFO);
  195. break;
  196. case R.id.paper_size /*2131231306*/:
  197. this.paper_size_info = getIntent().getIntArrayExtra(Constants.PAPER_SIZE_INFO);
  198. break;
  199. case R.id.paper_source /*2131231311*/:
  200. this.paper_source_info = getIntent().getIntArrayExtra(Constants.PAPER_SOURCE_INFO);
  201. break;
  202. case R.id.paper_type /*2131231314*/:
  203. this.paper_type_info = getIntent().getIntArrayExtra(Constants.PAPER_TYPE_INFO);
  204. break;
  205. case R.id.printdate /*2131231355*/:
  206. this.printdate_info = getIntent().getIntArrayExtra(Constants.PRINTDATE_INFO);
  207. break;
  208. case R.id.quality /*2131231392*/:
  209. this.quality_info = getIntent().getIntArrayExtra(Constants.PRINT_QUALITY_INFO);
  210. break;
  211. }
  212. this.sizeIndex = getIntent().getExtras().getInt("sizeIndex");
  213. this.typeIndex = getIntent().getExtras().getInt("typeIndex");
  214. this.isDocumentSetting = getIntent().getExtras().getBoolean("isDocumentSetting");
  215. this.mLayout = (ViewGroup) getLayoutInflater().inflate(R.layout.setting_detail, (ViewGroup) null);
  216. buildElements();
  217. setContentView((View) this.mLayout);
  218. setActionBar(getTitle().toString(), true);
  219. }
  220. private void buildElements() {
  221. this.mBuilder = new PrinterInfoDetailBuilder(getBaseContext(), this.mLayout);
  222. this.mBuilder.build();
  223. this.mBuilder.setResource(Integer.valueOf(getIntent().getExtras().getInt("curValue")));
  224. this.mBuilder.refresh();
  225. EPLog.i("buildElements", "id = " + this.f405id);
  226. switch (this.f405id) {
  227. case R.id.apf_setting_layout /*2131230819*/:
  228. setTitle(R.string.apf_setting_title);
  229. this.mLookupTable = new MediaInfo.ApfState();
  230. ((PrinterInfoDetailBuilder) this.mBuilder).addPrinterInfo(new int[]{1, 0}, this.mLookupTable);
  231. break;
  232. case R.id.color /*2131230930*/:
  233. this.mLookupTable = new MediaInfo.Color();
  234. setTitle(getString(R.string.color));
  235. this.mHandler.sendEmptyMessage(6);
  236. break;
  237. case R.id.duplex /*2131231005*/:
  238. this.mLookupTable = new MediaInfo.Duplex();
  239. setTitle(getString(R.string.duplex));
  240. this.mHandler.sendEmptyMessage(7);
  241. break;
  242. case R.id.feed_direction /*2131231037*/:
  243. this.mLookupTable = new MediaInfo.FeedDirection();
  244. setTitle(getString(R.string.feed_direction));
  245. this.mHandler.sendEmptyMessage(8);
  246. break;
  247. case R.id.layout /*2131231158*/:
  248. this.mLookupTable = new LayoutEx();
  249. setTitle(getString(R.string.layout));
  250. this.mHandler.sendEmptyMessage(3);
  251. break;
  252. case R.id.paper_size /*2131231306*/:
  253. this.mLookupTable = new MediaInfo.PaperSize();
  254. setTitle(getString(R.string.paper_size));
  255. this.mHandler.sendEmptyMessage(1);
  256. break;
  257. case R.id.paper_source /*2131231311*/:
  258. this.mLookupTable = new MediaInfo.PaperSource();
  259. setTitle(getString(R.string.paper_source));
  260. this.mHandler.sendEmptyMessage(5);
  261. break;
  262. case R.id.paper_type /*2131231314*/:
  263. this.mLookupTable = new MediaInfo.PaperType();
  264. setTitle(getString(R.string.paper_type));
  265. this.mHandler.sendEmptyMessage(2);
  266. break;
  267. case R.id.printdate /*2131231355*/:
  268. this.mLookupTable = new MediaInfo.PrintDate();
  269. setTitle(getString(R.string.date_print));
  270. this.mHandler.sendEmptyMessage(18);
  271. break;
  272. case R.id.quality /*2131231392*/:
  273. this.mLookupTable = new MediaInfo.Quality();
  274. setTitle(getString(R.string.quality));
  275. this.mHandler.sendEmptyMessage(4);
  276. break;
  277. case R.id.sharpness_setting_layout /*2131231482*/:
  278. setTitle(R.string.sharpness_setting_title);
  279. this.mLookupTable = new MediaInfo.SharpnessState();
  280. ((PrinterInfoDetailBuilder) this.mBuilder).addPrinterInfo(new int[]{1, 0}, this.mLookupTable);
  281. break;
  282. }
  283. ((ListView) this.mLayout.findViewById(16908298)).setOnItemClickListener(new AdapterView.OnItemClickListener() {
  284. public void onItemClick(AdapterView<?> adapterView, View view, int i, long j) {
  285. Intent intent = new Intent();
  286. Bundle bundle = new Bundle();
  287. bundle.putInt("ID", PrinterInfoDetail.this.f405id);
  288. bundle.putInt("curValue", ((CommonDataKinds.PrinterInfo) PrinterInfoDetail.this.mBuilder.getData().elementAt(i)).getValue());
  289. bundle.putInt("INDEX", i);
  290. intent.putExtras(bundle);
  291. PrinterInfoDetail.this.setResult(-1, intent);
  292. PrinterInfoDetail.this.finish();
  293. }
  294. });
  295. }
  296. protected void onDestroy() {
  297. super.onDestroy();
  298. this.mBuilder.destructor();
  299. MediaInfo.AbstractInfo abstractInfo = this.mLookupTable;
  300. if (abstractInfo != null) {
  301. abstractInfo.destructor();
  302. }
  303. }
  304. }