diff --git a/.idea/misc.xml b/.idea/misc.xml index e44ff7ad645267c3208b32beff4a3dbf0760b2bd..2fbdf8cdcfb3e0f30b82e96aed1e015604084b9e 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -4,11 +4,15 @@ <option name="filePathToZoomLevelMap"> <map> <entry key="..\:/Git/application-android-iut/app/src/main/res/layout-land/activity_main.xml" value="0.19635416666666666" /> - <entry key="..\:/Git/application-android-iut/app/src/main/res/layout-land/fragment_frag_horizontal_layout.xml" value="0.11197916666666667" /> <entry key="..\:/Git/application-android-iut/app/src/main/res/layout/activity_main.xml" value="0.176" /> <entry key="..\:/Git/application-android-iut/app/src/main/res/layout/activity_num_table.xml" value="0.264" /> - <entry key="..\:/Git/application-android-iut/app/src/main/res/layout/fragment_frag_vertical_layout.xml" value="0.1" /> - <entry key="..\:/Git/application-android-iut/app/src/main/res/layout/fragment_pizza_custom_vertical.xml" value="0.176" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout-land/activity_main.xml" value="0.21516754850088182" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout-land/fragment_frag_horizontal_layout.xml" value="0.1" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout/activity_main.xml" value="0.11302083333333333" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout/activity_num_table.xml" value="0.24547101449275363" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout/fragment_frag_horizontal_layout.xml" value="0.1" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout/fragment_frag_vertical_layout.xml" value="0.1" /> + <entry key="..\:/Users/sofia/Documents/GitHub/application-android-iut/app/src/main/res/layout/fragment_pizza_custom_vertical.xml" value="0.16822916666666668" /> <entry key="..\:/Z IUT Orsay/AndroidStudioProjects/Pizzeria/app/src/main/res/layout-land/activity_main.xml" value="0.1" /> <entry key="..\:/Z IUT Orsay/AndroidStudioProjects/Pizzeria/app/src/main/res/layout/activity_main.xml" value="0.2" /> </map> diff --git a/app/src/main/java/com/slprojects/pizzeria/FragCustomPizza.java b/app/src/main/java/com/slprojects/pizzeria/FragCustomPizza.java index b971bc184cd7940e44301803734fb4ea63345258..868d3baf12cd99671c9da5f168c0da73ffbc03d2 100644 --- a/app/src/main/java/com/slprojects/pizzeria/FragCustomPizza.java +++ b/app/src/main/java/com/slprojects/pizzeria/FragCustomPizza.java @@ -6,11 +6,41 @@ import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Button; + +import java.util.ArrayList; public class FragCustomPizza extends Fragment { + + @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_pizza_custom_vertical, container, false); + + //((MainActivity)getActivity()).registerCustomPizzaBtn(); + // Custom pizza fragment + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.mozzarella)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.gorgonzola)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.anchois)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.capres)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.olives)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.olives)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.artichauts)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.merguezChipo)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.merguezPiquante)); + ((MainActivity)getActivity()).boutons.add(view.findViewById(R.id.btnValiderPizzaCustom)); + + // On ajoute un listener sur chaque bouton + ((MainActivity)getActivity()).boutons.forEach((btn) -> btn.setOnClickListener((MainActivity)getActivity())); + + // On ajoute l'id de chaque bouton (normalement dans l'ordre + ((MainActivity)getActivity()).boutons.forEach((btn) -> ((MainActivity)getActivity()).idIndexes.add(btn.getId())); + + // Et on ajoute le nom de chaque bouton (également normalement dans l'ordre) + ((MainActivity)getActivity()).boutons.forEach((btn) -> ((MainActivity)getActivity()).nomBoutons.add(btn.getText().toString())); + + // On ajoute l'id de chaque bouton (normalement dans l'ordre + ((MainActivity)getActivity()).boutons.forEach((btn) -> ((MainActivity)getActivity()).idIndexes.add(btn.getId())); return view; } } diff --git a/app/src/main/java/com/slprojects/pizzeria/MainActivity.java b/app/src/main/java/com/slprojects/pizzeria/MainActivity.java index 3b9a6a21292ad83e089682e3b1d71ff087275cef..e13f2d491f7408e05997d010529a6f874b1b7775 100644 --- a/app/src/main/java/com/slprojects/pizzeria/MainActivity.java +++ b/app/src/main/java/com/slprojects/pizzeria/MainActivity.java @@ -1,7 +1,5 @@ package com.slprojects.pizzeria; -import static com.slprojects.pizzeria.NumTable.numTable; - import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; @@ -18,14 +16,16 @@ import java.util.ArrayList; public class MainActivity extends AppCompatActivity implements View.OnClickListener { - private ArrayList<Button> boutons; - private ArrayList<Integer> idIndexes; + ArrayList<Button> boutons; + ArrayList<Integer> idIndexes; private ArrayList<Integer> numCommands; - private ArrayList<String> nomBoutons; + ArrayList<String> nomBoutons; private int numTable; private backTasks tacheDeFond; private FragVerticalLayout frag; private Bundle savedInstanceState; + private String actualFragment; + private String compoPizzaPerso; @Override protected void onCreate(Bundle savedInstanceState) { @@ -37,6 +37,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe FragmentTransaction transaction = getFragmentManager().beginTransaction(); transaction.add(R.id.fragment_vertical_layout, frag); transaction.commit(); + actualFragment = "main"; Log.i("onCreate", "MainActivity"); Intent intent = getIntent(); @@ -59,6 +60,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe numCommands = new ArrayList<>(); nomBoutons = new ArrayList<>(); + // Main fragment boutons.add(frag.getView().findViewById(R.id.napolitaine)); boutons.add(frag.getView().findViewById(R.id.royale)); boutons.add(frag.getView().findViewById(R.id.quatreFromages)); @@ -98,35 +100,54 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe public void onClick(View v) { try{ - if(v.getId() == R.id.pizzaperso){ - // On vide la vue du fragment - FrameLayout fl= findViewById(R.id.fragment_vertical_layout); - fl.removeAllViews(); - // On va afficher le fragment de la piza perso - FragCustomPizza customPizzaFrag = new FragCustomPizza(); - FragmentTransaction transaction = getFragmentManager().beginTransaction(); - transaction.add(R.id.fragment_vertical_layout, customPizzaFrag); - transaction.commit(); - }else if(v.getId() == R.id.btnValiderPizzaCustom) { - // On vide la vue du fragment - FrameLayout fl= findViewById(R.id.fragment_vertical_layout); - fl.removeAllViews(); - - // On affiche le fragment principal - FragmentTransaction transaction = getFragmentManager().beginTransaction(); - transaction.add(R.id.fragment_vertical_layout, frag); - transaction.commit(); - - } else { - Button bouton = boutons.get(idIndexes.indexOf(v.getId())); - numCommands.set(idIndexes.indexOf(v.getId()), numCommands.get(idIndexes.indexOf(v.getId()))+1); - setButtonText(bouton); - - String message = numTable+nomBoutons.get(idIndexes.indexOf(v.getId())); - // Envoie de la commande - tacheDeFond = new backTasks(); - tacheDeFond.execute(message); + Log.i("Bouton clické", String.valueOf(v.getId())); + if(actualFragment == "main"){ + if(v.getId() == R.id.pizzaperso){ + // On vide la vue du fragment + //FrameLayout fl= findViewById(R.id.fragment_vertical_layout); + //fl.removeAllViews(); + // On va afficher le fragment de la piza perso + FragCustomPizza customPizzaFrag = new FragCustomPizza(); + FragmentTransaction transaction = getFragmentManager().beginTransaction(); + transaction.replace(R.id.fragment_vertical_layout, customPizzaFrag); + transaction.commit(); + actualFragment = "customPizza"; + + } else { + Button bouton = boutons.get(idIndexes.indexOf(v.getId())); + numCommands.set(idIndexes.indexOf(v.getId()), numCommands.get(idIndexes.indexOf(v.getId()))+1); + setButtonText(bouton); + + String message = numTable+nomBoutons.get(idIndexes.indexOf(v.getId())); + // Envoie de la commande + tacheDeFond = new backTasks(); + tacheDeFond.execute(message); + } + }else if(actualFragment == "customPizza"){ + if(v.getId() == R.id.btnValiderPizzaCustom) { + // Envoie de la commande + tacheDeFond = new backTasks(); + tacheDeFond.execute(compoPizzaPerso); + + // On vide la vue du fragment + //FrameLayout fl= findViewById(R.id.fragment_vertical_layout); + //fl.removeAllViews(); + + // On affiche le fragment principal + FragmentTransaction transaction = getFragmentManager().beginTransaction(); + transaction.replace(R.id.fragment_vertical_layout, frag); + transaction.commit(); + }else{ + if(compoPizzaPerso != null){ + compoPizzaPerso = compoPizzaPerso + " + " + nomBoutons.get(idIndexes.indexOf(v.getId())); + }else{ + compoPizzaPerso = String.valueOf(numTable); + compoPizzaPerso = compoPizzaPerso + nomBoutons.get(idIndexes.indexOf(v.getId())); + } + } } + + }catch ( Exception e ){ Log.e("Erreur", e.getMessage()); }