diff --git a/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/MainActivity.java b/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/MainActivity.java index 163e997d33dcb5a387f99443b95f7a06f7afc986..670d68667433b8a66145e32f8447d2ee81ec6442 100644 --- a/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/MainActivity.java +++ b/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/MainActivity.java @@ -5,6 +5,9 @@ import android.content.DialogInterface; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.KeyEvent; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; @@ -19,6 +22,7 @@ import java.util.ArrayList; import ms.itsecteam.warpdrink.data.User; import ms.itsecteam.warpdrink.dialogs.ChargeDialog; +import ms.itsecteam.warpdrink.dialogs.NewUserDialog; import ms.itsecteam.warpdrink.orderList.ListViewAdapter; import ms.itsecteam.warpdrink.orderList.Order; @@ -35,6 +39,12 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe private ArrayList<Double> order; private User currentUser; + public boolean onCreateOptionsMenu(Menu menu) { + MenuInflater inflater = getMenuInflater(); + inflater.inflate(R.menu.menu_main, menu); + return true; + } + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -46,7 +56,7 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe new User(5, "detlef", 0.5).save(); getWindow().addFlags(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN); - getSupportActionBar().hide(); + // getSupportActionBar().hide(); setContentView(R.layout.activity_main); @@ -159,6 +169,9 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe case R.id.btnLogout: clearCurrentUser(); break; + case R.id.btnAddUser: + new NewUserDialog(this).show(); + break; case R.id.btnRefresh: Toast.makeText(this,"refresh" ,Toast.LENGTH_LONG).show(); break; @@ -190,4 +203,19 @@ public class MainActivity extends ActionBarActivity implements View.OnClickListe this.currentUser.save(); this.clearCurrentUser(); } + public boolean onOptionsItemSelected(MenuItem item) { + switch (item.getItemId()) { + case R.id.action_settings: + Toast.makeText(this, "Settings selected", Toast.LENGTH_SHORT).show(); + break; + case R.id.action_new_user: + new NewUserDialog(this).show(); + break; + default: + break; + } + + return true; + } + } diff --git a/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/data/DataApi.java b/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/data/DataApi.java new file mode 100644 index 0000000000000000000000000000000000000000..093f144d6bb3e9145cf877bc1b71fcd2104eb508 --- /dev/null +++ b/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/data/DataApi.java @@ -0,0 +1,31 @@ +package ms.itsecteam.warpdrink.data; + +/** + * Created by Chris on 27.06.2015. + */ +public class DataApi { + + public static boolean addUser(String name) { + if(User.getByName(name) == null) { + User u = new User(); + u.setName(name); + u.save(); + remoteSaveNewUser(u); + localRefreshUserData(); + return true; + } + return false; + } + + public static void localRefreshUserData() { + + } + + private static boolean remoteSaveNewUser(User u) { + return true; + } + + public static User remoteGetUser(int userid) { + return new User(); + } +} diff --git a/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/dialogs/NewUserDialog.java b/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/dialogs/NewUserDialog.java new file mode 100644 index 0000000000000000000000000000000000000000..1241c57ca26bdc8966b645b32ae0dfeaf384fc0d --- /dev/null +++ b/WarpDrinkApp/app/src/main/java/ms/itsecteam/warpdrink/dialogs/NewUserDialog.java @@ -0,0 +1,60 @@ +package ms.itsecteam.warpdrink.dialogs; + +import android.app.Dialog; +import android.os.Bundle; +import android.view.View; +import android.view.Window; +import android.widget.Button; +import android.widget.TextView; +import android.widget.Toast; + +import ms.itsecteam.warpdrink.MainActivity; +import ms.itsecteam.warpdrink.R; +import ms.itsecteam.warpdrink.data.DataApi; +import ms.itsecteam.warpdrink.data.User; + +public class NewUserDialog extends Dialog implements + View.OnClickListener { + + public MainActivity c; + public Dialog d; + public Button btnAddUser; + public TextView txtUsername; + public NewUserDialog(MainActivity a) { + super(a); + this.c = a; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + requestWindowFeature(Window.FEATURE_NO_TITLE); + setContentView(R.layout.new_user_dialog); + this.btnAddUser = (Button) findViewById(R.id.btnAddUser); + this.btnAddUser.setOnClickListener(this); + this.txtUsername = (TextView) findViewById(R.id.txtUsername); + + + } + + @Override + public void onClick(View v) { + switch (v.getId()) { + case R.id.btnAddUser: + String username = this.txtUsername.getText().toString(); + if (!username.equals("")) { + if(!DataApi.addUser(username)) { + Toast.makeText(v.getContext(),"Username ist schon vorhanden",Toast.LENGTH_LONG).show(); + } else { + Toast.makeText(v.getContext(),"User angelegt",Toast.LENGTH_LONG).show(); + dismiss(); + } + } else { + Toast.makeText(v.getContext(),"Username darf nicht leer sein",Toast.LENGTH_LONG).show(); + } + break; + default: + break; + } + } +} diff --git a/WarpDrinkApp/app/src/main/res/drawable/ic_menu_add.png b/WarpDrinkApp/app/src/main/res/drawable/ic_menu_add.png new file mode 100644 index 0000000000000000000000000000000000000000..89620af8c03d187d47c7630e9c2a257b88e9e176 Binary files /dev/null and b/WarpDrinkApp/app/src/main/res/drawable/ic_menu_add.png differ diff --git a/WarpDrinkApp/app/src/main/res/layout/activity_main.xml b/WarpDrinkApp/app/src/main/res/layout/activity_main.xml index 34f62a8585d56704fcd2ffbb4f7acabf05e1682b..fe095e2108285f1f706858b78028ff3352d5b6a6 100644 --- a/WarpDrinkApp/app/src/main/res/layout/activity_main.xml +++ b/WarpDrinkApp/app/src/main/res/layout/activity_main.xml @@ -18,14 +18,15 @@ <LinearLayout android:orientation="vertical" android:layout_width="464dp" - android:layout_height="match_parent"> + android:layout_height="wrap_content"> <LinearLayout android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="50dp" android:layout_row="0" - android:layout_column="1"> + android:layout_column="1" + android:weightSum="1"> <TextView android:layout_width="wrap_content" @@ -40,14 +41,15 @@ android:layout_height="20px" /> <AutoCompleteTextView - android:layout_width="350dp" + android:layout_width="340dp" android:layout_height="wrap_content" android:id="@+id/atxvName" android:imeOptions="actionNext" android:singleLine="true" android:layout_columnSpan="1" android:layout_row="0" - android:layout_column="0" /> + android:layout_column="0" + android:layout_weight="0.54" /> <ImageButton android:layout_width="30dp" diff --git a/WarpDrinkApp/app/src/main/res/layout/new_user_dialog.xml b/WarpDrinkApp/app/src/main/res/layout/new_user_dialog.xml new file mode 100644 index 0000000000000000000000000000000000000000..7439f4cf1650028eb46165b3c6022a8902a224d6 --- /dev/null +++ b/WarpDrinkApp/app/src/main/res/layout/new_user_dialog.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:orientation="vertical" android:layout_width="wrap_content" + android:layout_height="wrap_content"> + + <Space + android:layout_width="20px" + android:layout_height="20px" /> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/name" + android:id="@+id/lblUserName" /> + + <Space + android:layout_width="20px" + android:layout_height="20px" /> + + <EditText + android:layout_width="358dp" + android:layout_height="wrap_content" + android:inputType="textPersonName" + android:ems="10" + android:id="@+id/txtUsername" /> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/addNewUser" + android:id="@+id/btnAddUser" /> + + <Space + android:layout_width="20px" + android:layout_height="20px" /> + + +</LinearLayout> \ No newline at end of file diff --git a/WarpDrinkApp/app/src/main/res/menu/menu_main.xml b/WarpDrinkApp/app/src/main/res/menu/menu_main.xml index b1cb90811d785634832cd130f3dd257d3f86560e..056ff9c36effcc1db409dceb5dba610db19e281d 100644 --- a/WarpDrinkApp/app/src/main/res/menu/menu_main.xml +++ b/WarpDrinkApp/app/src/main/res/menu/menu_main.xml @@ -1,6 +1,13 @@ <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context=".MainActivity"> - <item android:id="@+id/action_settings" android:title="@string/action_settings" - android:orderInCategory="100" app:showAsAction="never" /> + <item + android:id="@+id/action_settings" + android:title="Settings" /> + <item + android:id="@+id/action_new_user" + android:orderInCategory="100" + android:icon="@drawable/ic_menu_refresh" + android:title="@string/addNewUser" /> + </menu> diff --git a/WarpDrinkApp/app/src/main/res/values/strings.xml b/WarpDrinkApp/app/src/main/res/values/strings.xml index 4bf4b1de575d60a8172f9d42046a3e014d5e79a2..3f128e3b2c523e84179c0d535087e31da4cbda24 100644 --- a/WarpDrinkApp/app/src/main/res/values/strings.xml +++ b/WarpDrinkApp/app/src/main/res/values/strings.xml @@ -21,6 +21,7 @@ <string name="confirm_payment">Willst du wirklich %1$,.2f Euro bezahlen?</string> <string name="credit">Guthaben: %1$,.2f Euro</string> <string name="total">Gesamt: %1$,.2f Euro</string> + <string name="addNewUser">Benutzer hinzufügen</string> <style name="ButtonText"> <item name="android:layout_width">fill_parent</item>