From 6a47b931b2246743dab0e45e4a62474230ff1293 Mon Sep 17 00:00:00 2001 From: pascal Date: Mon, 24 Dec 2018 22:37:26 +0100 Subject: [PATCH] =?UTF-8?q?Version=202.0.3=20Issues=20#1,=20#3,=20#4=20et?= =?UTF-8?q?=20#5=20corrig=C3=A9es=20Changement=20des=20couleurs=20des=20bo?= =?UTF-8?q?utons=20Coureur=20Harmonisation=20du=20nombre=20de=20coureurs?= =?UTF-8?q?=20max=20entre=20les=20classes=20TabEquipe,=20TabCourse=20et=20?= =?UTF-8?q?TabResultats=20Temporisation=20de=20la=20classe=20du=20BoutonTe?= =?UTF-8?q?mporise=20en=20constante?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 2 +- .../chronos24hlemans/BoutonTemporise.java | 16 ++++++---- .../chronos24hlemans/Equipe.java | 6 ++++ .../chronos24hlemans/TabCourse.java | 30 +++++++++++++------ .../chronos24hlemans/TabEquipe.java | 3 +- .../chronos24hlemans/TabResultats.java | 6 ++-- app/src/main/res/layout/tab_course.xml | 10 +++++++ app/src/main/res/layout/tab_equipe.xml | 10 +++---- app/src/main/res/values/colors.xml | 4 +-- app/src/main/res/values/strings.xml | 2 +- 10 files changed, 61 insertions(+), 28 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index d15edc3..1dc6e81 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -8,7 +8,7 @@ android { minSdkVersion 19 targetSdkVersion 23 versionCode 1 - versionName '2.0.2' + versionName '2.0.3' archivesBaseName = "AIT-Chronos24hLeMans-$versionName" } buildTypes { diff --git a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/BoutonTemporise.java b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/BoutonTemporise.java index f9f04fd..699ef17 100644 --- a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/BoutonTemporise.java +++ b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/BoutonTemporise.java @@ -30,22 +30,28 @@ public void onFinish() { } // Constructeur - // TODO Mettre en paramètres la tempo de 5s public BoutonTemporise(Context context) { super(context); - pCountDownTimer = new TemporisationBouton(5000, 5000); } // Constructeur // Ce constructeur est nécessaire afin d'éviter une exception java.lang.NoSuchMethodException public BoutonTemporise(Context context, AttributeSet attrs) { super(context, attrs); - pCountDownTimer = new TemporisationBouton(5000, 5000); } // Méthode start public void start() { - this.setEnabled(false); - pCountDownTimer.start(); + if (pCountDownTimer != null) { + this.setEnabled(false); + pCountDownTimer.start(); + } + else { + } + } + + // Méthode ecrireTemporisation + public void ecrireTemporisation(long temporisation) { + pCountDownTimer = new TemporisationBouton(temporisation, temporisation); } } diff --git a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/Equipe.java b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/Equipe.java index 0059197..4157a4c 100644 --- a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/Equipe.java +++ b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/Equipe.java @@ -303,4 +303,10 @@ public void inverserCoureurs(int position1, int position2) { } ecrireXMLEquipe(); } + + // Méthode lireNombreMaxCoureur + // Retourne le nommbre maximum de coureurs + public int lireNombreMaxCoureur() { + return (this.pNbCoureurMax); + } } \ No newline at end of file diff --git a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabCourse.java b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabCourse.java index 763f675..30f5179 100644 --- a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabCourse.java +++ b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabCourse.java @@ -14,6 +14,8 @@ import android.widget.Button; import android.widget.Chronometer; import android.widget.TextView; +import android.widget.Toast; + import java.util.Date; // Class TabCourse @@ -51,6 +53,8 @@ public void onFinish() { } } // Attributs privés + private final long TEMPORISATION = 5000; + private int pNbCoureur; private int pIndexCoureur; private String pNomCoureur; private AlerteCoureur pAlerteCoureur; @@ -95,7 +99,7 @@ private void arreterAlerteCoureur() { // Méthode afficherBouton private void afficherBouton() { int i; - for (i = 0; i < 12; i++) { + for (i = 0; i < pNbCoureur; i++) { if (TabEquipe.pEquipe.lireCoureur(i) != null) { pBoutonCoureur[i].setText(TabEquipe.pEquipe.lireCoureur(i)); pBoutonCoureur[i].setEnabled(TabEquipe.pEquipe.lireEtatActif(i)); @@ -106,11 +110,16 @@ private void afficherBouton() { } } + // Constructeur + public TabCourse() { + pNbCoureur = TabEquipe.pEquipe.lireNombreMaxCoureur(); + } + // Méthode onCreate @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); - pIndexCoureur = 12; + pIndexCoureur = pNbCoureur; pNomCoureur = ""; pCourseDemarree = false; pPauseDemarree = false; @@ -125,11 +134,13 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa int id; String lNom; final View lView = inflater.inflate(R.layout.tab_course, container, false); - // TODO Remplacer 12 par une constante - pBoutonCoureur = new BoutonTemporise[12]; - for (i = 0; i < 12; i++) { + pBoutonCoureur = new BoutonTemporise[pNbCoureur]; + for (i = 0; i < pNbCoureur; i++) { switch (i) { default: + id = R.id.buttonCoureurBidon; + Toast.makeText(lView.getContext(), String.format("Coureur %d ignoré", i), Toast.LENGTH_SHORT).show(); + break; case 0: id = R.id.buttonCoureur1; break; @@ -168,6 +179,7 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa break; } pBoutonCoureur[i] = (BoutonTemporise) lView.findViewById(id); + pBoutonCoureur[i].ecrireTemporisation(TEMPORISATION); pBoutonCoureur[i].setBackgroundColor(getResources().getColor(R.color.bouton_nonselectionne)); } afficherBouton(); @@ -190,7 +202,7 @@ public void onClick(View view) { arreterAlerteCoureur(); pBoutonPause.setText("Reprendre"); pBoutonArreter.setEnabled(false); - for (i = 0; i < 12; i++) { + for (i = 0; i < pNbCoureur; i++) { pBoutonCoureur[i].setEnabled(false); } pPauseDemarree = true; @@ -199,7 +211,7 @@ public void onClick(View view) { pChronometre.start(); pBoutonPause.setText("Pause"); pBoutonArreter.setEnabled(true); - for (i = 0; i < 12; i++) { + for (i = 0; i < pNbCoureur; i++) { pBoutonCoureur[i].setEnabled(true); } pPauseDemarree = false; @@ -223,10 +235,10 @@ public void onClick(View view) { pTextViewNbTour.setText(String.format("%03d", lNbTour)); pCourseDemarree = false; pNomCoureur = ""; - pIndexCoureur = 12; + pIndexCoureur = pNbCoureur; } }); - for (i = 0; i < 12; i++) { + for (i = 0; i < pNbCoureur; i++) { final int final_i = i; pBoutonCoureur[i].setOnClickListener(new View.OnClickListener() { @Override diff --git a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabEquipe.java b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabEquipe.java index 63b2f5c..87a3396 100644 --- a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabEquipe.java +++ b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabEquipe.java @@ -21,7 +21,7 @@ // Class TabEquipe public class TabEquipe extends Fragment { // Attributs privés - private final int kNbCoureurMax = 20; + private final int kNbCoureurMax = 12; private int pNbCoureurs; private int pCoureurSelectionne; private CoureurAdapter pCoureurAdapter; @@ -108,7 +108,6 @@ public void onFocusChange(View view, boolean hasFocus) { pListViewEquipe.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { - // TODO Changer la couleur de la ligne sélectionnée pCoureurSelectionne = position; pBoiteActif.setVisibility(View.VISIBLE); pBoiteActif.setChecked(pEquipe.lireEtatActif(position)); diff --git a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabResultats.java b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabResultats.java index b13af84..91db801 100644 --- a/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabResultats.java +++ b/app/src/main/java/com/assistanceinformatiquetoulouse/chronos24hlemans/TabResultats.java @@ -17,8 +17,7 @@ public class TabResultats extends Fragment { // Atributs privés private final int kNbResultatMax = 300; - // TODO Supprimer la déclaration en double - private final int kNbCoureurMax = 20; + private int pNbCoureurMax; private static ResultatAdapter pResultatAdapter; private TextView pTextViewNomCoureur; private TextView pTextViewNbTour; @@ -32,8 +31,9 @@ public class TabResultats extends Fragment { // Constructeur public TabResultats() { + pNbCoureurMax = TabEquipe.pEquipe.lireNombreMaxCoureur(); pListeResultats = new ArrayList(kNbResultatMax); - pListeStatCoureurs = new ArrayList(kNbCoureurMax); + pListeStatCoureurs = new ArrayList(pNbCoureurMax); } // Méthode onCreateView diff --git a/app/src/main/res/layout/tab_course.xml b/app/src/main/res/layout/tab_course.xml index 2939eb1..5655d73 100644 --- a/app/src/main/res/layout/tab_course.xml +++ b/app/src/main/res/layout/tab_course.xml @@ -192,5 +192,15 @@ android:text="Coureur 12" android:textSize="@dimen/bouton_taille_texte" android:clickable="true" /> + \ No newline at end of file diff --git a/app/src/main/res/layout/tab_equipe.xml b/app/src/main/res/layout/tab_equipe.xml index ef81fa4..1433c16 100644 --- a/app/src/main/res/layout/tab_equipe.xml +++ b/app/src/main/res/layout/tab_equipe.xml @@ -69,20 +69,20 @@ android:layout_marginStart="24dp" android:gravity="center" android:text="@string/ajouter" /> - + android:layout_centerHorizontal="true" + android:choiceMode="singleChoice" + android:listSelector="@android:color/darker_gray" /> \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 4a3f2b9..19379a3 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -3,6 +3,6 @@ #3F51B5 #303F9F #FF4081 - #FA58F4 - #FF0000 + #F781F3 + #819FF7 diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 960d8fb..61b67f1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,6 +1,6 @@ Chronos24hLeMans - 2.0.2 + 2.0.3 Nom courses@roulezrose.com