diff --git a/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java b/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java index 47875064e..1f1c235e7 100644 --- a/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java +++ b/app/src/main/java/protect/card_locker/LoyaltyCardViewActivity.java @@ -34,6 +34,28 @@ public class LoyaltyCardViewActivity extends AppCompatActivity private static final int SELECT_BARCODE_REQUEST = 1; + EditText storeFieldEdit; + TextView storeFieldView; + EditText noteFieldEdit; + TextView noteFieldView; + EditText cardIdFieldEdit; + TextView cardIdFieldView; + EditText barcodeTypeField; + ImageView barcodeImage; + View barcodeIdLayout; + View barcodeTypeLayout; + View barcodeImageLayout; + View barcodeCaptureLayout; + + Button captureButton; + Button enterButton; + + int loyaltyCardId; + boolean updateLoyaltyCard; + boolean viewLoyaltyCard; + + DBHelper db; + @Override protected void onCreate(Bundle savedInstanceState) { @@ -47,6 +69,13 @@ public class LoyaltyCardViewActivity extends AppCompatActivity { actionBar.setDisplayHomeAsUpEnabled(true); } + + final Bundle b = getIntent().getExtras(); + loyaltyCardId = b != null ? b.getInt("id") : 0; + updateLoyaltyCard = b != null && b.getBoolean("update", false); + viewLoyaltyCard = b != null && b.getBoolean("view", false); + + db = new DBHelper(this); } @Override @@ -54,11 +83,6 @@ public class LoyaltyCardViewActivity extends AppCompatActivity { super.onResume(); - final Bundle b = getIntent().getExtras(); - final int loyaltyCardId = b != null ? b.getInt("id") : 0; - final boolean updateLoyaltyCard = b != null && b.getBoolean("update", false); - final boolean viewLoyaltyCard = b != null && b.getBoolean("view", false); - Log.i(TAG, "To view card: " + loyaltyCardId); if(viewLoyaltyCard) @@ -75,25 +99,21 @@ public class LoyaltyCardViewActivity extends AppCompatActivity } } - final EditText storeFieldEdit = (EditText) findViewById(R.id.storeNameEdit); - final TextView storeFieldView = (TextView) findViewById(R.id.storeNameView); - final EditText noteFieldEdit = (EditText) findViewById(R.id.noteEdit); - final TextView noteFieldView = (TextView) findViewById(R.id.noteView); - final EditText cardIdFieldEdit = (EditText) findViewById(R.id.cardIdEdit); - final TextView cardIdFieldView = (TextView) findViewById(R.id.cardIdView); - final EditText barcodeTypeField = (EditText) findViewById(R.id.barcodeType); - final ImageView barcodeImage = (ImageView) findViewById(R.id.barcode); - final View barcodeIdLayout = findViewById(R.id.barcodeIdLayout); - final View barcodeTypeLayout = findViewById(R.id.barcodeTypeLayout); - final View barcodeImageLayout = findViewById(R.id.barcodeLayout); - final View barcodeCaptureLayout = findViewById(R.id.barcodeCaptureLayout); + storeFieldEdit = (EditText) findViewById(R.id.storeNameEdit); + storeFieldView = (TextView) findViewById(R.id.storeNameView); + noteFieldEdit = (EditText) findViewById(R.id.noteEdit); + noteFieldView = (TextView) findViewById(R.id.noteView); + cardIdFieldEdit = (EditText) findViewById(R.id.cardIdEdit); + cardIdFieldView = (TextView) findViewById(R.id.cardIdView); + barcodeTypeField = (EditText) findViewById(R.id.barcodeType); + barcodeImage = (ImageView) findViewById(R.id.barcode); + barcodeIdLayout = findViewById(R.id.barcodeIdLayout); + barcodeTypeLayout = findViewById(R.id.barcodeTypeLayout); + barcodeImageLayout = findViewById(R.id.barcodeLayout); + barcodeCaptureLayout = findViewById(R.id.barcodeCaptureLayout); - final Button captureButton = (Button) findViewById(R.id.captureButton); - final Button enterButton = (Button) findViewById(R.id.enterButton); - final Button saveButton = (Button) findViewById(R.id.saveButton); - final Button cancelButton = (Button) findViewById(R.id.cancelButton); - - final DBHelper db = new DBHelper(this); + captureButton = (Button) findViewById(R.id.captureButton); + enterButton = (Button) findViewById(R.id.enterButton); if(updateLoyaltyCard || viewLoyaltyCard) { @@ -134,8 +154,6 @@ public class LoyaltyCardViewActivity extends AppCompatActivity { barcodeCaptureLayout.setVisibility(View.GONE); captureButton.setVisibility(View.GONE); - saveButton.setVisibility(View.GONE); - cancelButton.setVisibility(View.GONE); setTitle(R.string.viewCardTitle); storeFieldEdit.setVisibility(View.GONE); @@ -243,51 +261,38 @@ public class LoyaltyCardViewActivity extends AppCompatActivity { enterButton.setText(R.string.enterCard); } + } - saveButton.setOnClickListener(new View.OnClickListener() + private void doSave() + { + String store = storeFieldEdit.getText().toString(); + String note = noteFieldEdit.getText().toString(); + String cardId = cardIdFieldEdit.getText().toString(); + String barcodeType = barcodeTypeField.getText().toString(); + + if(store.isEmpty()) { - @Override - public void onClick(final View v) - { - String store = storeFieldEdit.getText().toString(); - String note = noteFieldEdit.getText().toString(); - String cardId = cardIdFieldEdit.getText().toString(); - String barcodeType = barcodeTypeField.getText().toString(); + Snackbar.make(storeFieldEdit, R.string.noStoreError, Snackbar.LENGTH_LONG).show(); + return; + } - if(store.isEmpty()) - { - Snackbar.make(v, R.string.noStoreError, Snackbar.LENGTH_LONG).show(); - return; - } - - if(cardId.isEmpty() || barcodeType.isEmpty()) - { - Snackbar.make(v, R.string.noCardIdError, Snackbar.LENGTH_LONG).show(); - return; - } - - if(updateLoyaltyCard) - { - db.updateLoyaltyCard(loyaltyCardId, store, note, cardId, barcodeType); - Log.i(TAG, "Updated " + loyaltyCardId + " to " + cardId); - } - else - { - db.insertLoyaltyCard(store, note, cardId, barcodeType); - } - - finish(); - } - }); - - cancelButton.setOnClickListener(new View.OnClickListener() + if(cardId.isEmpty() || barcodeType.isEmpty()) { - @Override - public void onClick(View v) - { - finish(); - } - }); + Snackbar.make(cardIdFieldEdit, R.string.noCardIdError, Snackbar.LENGTH_LONG).show(); + return; + } + + if(updateLoyaltyCard) + { + db.updateLoyaltyCard(loyaltyCardId, store, note, cardId, barcodeType); + Log.i(TAG, "Updated " + loyaltyCardId + " to " + cardId); + } + else + { + db.insertLoyaltyCard(store, note, cardId, barcodeType); + } + + finish(); } @Override @@ -361,6 +366,10 @@ public class LoyaltyCardViewActivity extends AppCompatActivity startActivity(intent); finish(); return true; + + case R.id.action_save: + doSave(); + return true; } return super.onOptionsItemSelected(item); diff --git a/app/src/main/res/drawable-hdpi/save_24dp.png b/app/src/main/res/drawable-hdpi/save_24dp.png new file mode 100644 index 000000000..703c4c154 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/save_24dp.png differ diff --git a/app/src/main/res/drawable-mdpi/save_24dp.png b/app/src/main/res/drawable-mdpi/save_24dp.png new file mode 100644 index 000000000..875b74a18 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/save_24dp.png differ diff --git a/app/src/main/res/drawable-xhdpi/save_24dp.png b/app/src/main/res/drawable-xhdpi/save_24dp.png new file mode 100644 index 000000000..10f1eaf17 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/save_24dp.png differ diff --git a/app/src/main/res/drawable-xxhdpi/save_24dp.png b/app/src/main/res/drawable-xxhdpi/save_24dp.png new file mode 100644 index 000000000..10bd566ce Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/save_24dp.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/save_24dp.png b/app/src/main/res/drawable-xxxhdpi/save_24dp.png new file mode 100644 index 000000000..19ed7e104 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/save_24dp.png differ diff --git a/app/src/main/res/layout/loyalty_card_view_activity.xml b/app/src/main/res/layout/loyalty_card_view_activity.xml index aeead6893..b3be08796 100644 --- a/app/src/main/res/layout/loyalty_card_view_activity.xml +++ b/app/src/main/res/layout/loyalty_card_view_activity.xml @@ -155,22 +155,6 @@ android:text="@string/enterCard" android:layout_weight="1.0"/> - -