Blame view

app/src/main/java/net/plil/clubinfo/etunicorn/app/consommation/ConsommationRecyclerViewAdapter.java 4.18 KB
299af019   badetitou   Add payment conso...
1
  package net.plil.clubinfo.etunicorn.app.consommation;
d6367fe9   badetitou   Ajout liste
2
  
0ecfc67f   badetitou   Modify Consommation
3
4
5
  import android.content.Context;
  import android.support.v7.app.AppCompatActivity;
  import android.support.v7.widget.PopupMenu;
d6367fe9   badetitou   Ajout liste
6
  import android.support.v7.widget.RecyclerView;
d6367fe9   badetitou   Ajout liste
7
  import android.view.LayoutInflater;
0ecfc67f   badetitou   Modify Consommation
8
  import android.view.MenuItem;
d6367fe9   badetitou   Ajout liste
9
10
11
  import android.view.View;
  import android.view.ViewGroup;
  import android.widget.TextView;
d6367fe9   badetitou   Ajout liste
12
13
  
  import net.plil.clubinfo.etunicorn.R;
299af019   badetitou   Add payment conso...
14
  import net.plil.clubinfo.etunicorn.data.Consommation;
d6367fe9   badetitou   Ajout liste
15
16
17
18
19
  
  import java.util.List;
  import java.util.Locale;
  
  
3dc52ca9   badetitou   Cleaning code 2.0
20
  class ConsommationRecyclerViewAdapter extends RecyclerView.Adapter<ConsommationRecyclerViewAdapter.ViewHolder> {
d6367fe9   badetitou   Ajout liste
21
  
299af019   badetitou   Add payment conso...
22
23
      private final List<Consommation> mValues;
      private final FragmentConsommation.OnListFragmentInteractionListener mListener;
0ecfc67f   badetitou   Modify Consommation
24
      private final Context context;
d6367fe9   badetitou   Ajout liste
25
  
3dc52ca9   badetitou   Cleaning code 2.0
26
      ConsommationRecyclerViewAdapter(List<Consommation> items, FragmentConsommation.OnListFragmentInteractionListener listener, Context context) {
d6367fe9   badetitou   Ajout liste
27
28
          mValues = items;
          mListener = listener;
0ecfc67f   badetitou   Modify Consommation
29
          this.context = context;
d6367fe9   badetitou   Ajout liste
30
31
32
33
34
35
36
37
38
      }
  
      @Override
      public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
          View view = LayoutInflater.from(parent.getContext())
                  .inflate(R.layout.fragment_consomation_item, parent, false);
          return new ViewHolder(view);
      }
  
73b70b1e   badetitou   Ajout de Consomation
39
  
d6367fe9   badetitou   Ajout liste
40
41
42
      @Override
      public void onBindViewHolder(final ViewHolder holder, int position) {
          holder.mItem = mValues.get(position);
517f580e   badetitou   Can modify User
43
          holder.mIdView.setText(String.format(Locale.US, "%d", mValues.get(position).getIdConsomation()));
d6367fe9   badetitou   Ajout liste
44
          holder.mContentView.setText(mValues.get(position).getNomConsomation());
3dc52ca9   badetitou   Cleaning code 2.0
45
          holder.mPriceView.setText(String.format(Locale.US, "%.2f", mValues.get(position).getPrix()));
d6367fe9   badetitou   Ajout liste
46
47
48
49
50
  
          holder.mView.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  if (null != mListener) {
d6367fe9   badetitou   Ajout liste
51
52
53
54
                      mListener.onListFragmentInteraction(holder.mItem);
                  }
              }
          });
73b70b1e   badetitou   Ajout de Consomation
55
  
0ecfc67f   badetitou   Modify Consommation
56
57
58
59
60
61
62
63
64
65
66
67
          holder.mButtonMenu.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                  final PopupMenu popup = new PopupMenu(v.getContext(), holder.mButtonMenu);
                  //inflating menu from xml resource
                  popup.inflate(R.menu.option_list);
                  //adding click listener
                  popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
                      @Override
                      public boolean onMenuItemClick(MenuItem item) {
                          switch (item.getItemId()) {
                              case R.id.delete:
68348eda   badetitou   Adding modify and...
68
69
                                  DeleteConsommation deleteConsommation = DeleteConsommation.newInstance(holder.mItem);
                                  deleteConsommation.show(((AppCompatActivity) context).getSupportFragmentManager(), "deleteConsommation");
0ecfc67f   badetitou   Modify Consommation
70
71
                                  break;
                              case R.id.modify:
68348eda   badetitou   Adding modify and...
72
73
                                  ModifyConsommation modifyConsommation = ModifyConsommation.newInstance(holder.mItem);
                                  modifyConsommation.show(((AppCompatActivity) context).getSupportFragmentManager(), "modifyConsommation");
0ecfc67f   badetitou   Modify Consommation
74
75
76
77
78
79
80
81
82
                                  break;
                          }
                          return false;
                      }
                  });
                  //displaying the popup
                  popup.show();
              }
          });
d6367fe9   badetitou   Ajout liste
83
84
85
86
87
88
89
      }
  
      @Override
      public int getItemCount() {
          return mValues.size();
      }
  
3dc52ca9   badetitou   Cleaning code 2.0
90
91
92
93
94
95
96
      class ViewHolder extends RecyclerView.ViewHolder {
          final View mView;
          final TextView mIdView;
          final TextView mContentView;
          final TextView mPriceView;
          final TextView mButtonMenu;
          Consommation mItem;
d6367fe9   badetitou   Ajout liste
97
  
3dc52ca9   badetitou   Cleaning code 2.0
98
          ViewHolder(View view) {
d6367fe9   badetitou   Ajout liste
99
100
101
102
103
              super(view);
              mView = view;
              mIdView = (TextView) view.findViewById(R.id.consomation_id);
              mContentView = (TextView) view.findViewById(R.id.consomation_name);
              mPriceView = (TextView) view.findViewById(R.id.consomation_price);
0ecfc67f   badetitou   Modify Consommation
104
              mButtonMenu = (TextView) view.findViewById(R.id.consomation_options);
d6367fe9   badetitou   Ajout liste
105
106
          }
  
d6367fe9   badetitou   Ajout liste
107
108
      }
  }