25 import android.widget.SimpleAdapter; |
25 import android.widget.SimpleAdapter; |
26 import android.widget.SimpleAdapter.ViewBinder; |
26 import android.widget.SimpleAdapter.ViewBinder; |
27 |
27 |
28 public class TeamSelectionActivity extends Activity{ |
28 public class TeamSelectionActivity extends Activity{ |
29 |
29 |
|
30 private static final int ACTIVITY_TEAMCREATION = 0; |
|
31 |
30 private ImageButton addTeam, back; |
32 private ImageButton addTeam, back; |
31 private ListView availableTeams, selectedTeams; |
33 private ListView availableTeams, selectedTeams; |
32 private ArrayList<HashMap<String, ?>> availableTeamsList, selectedTeamsList; |
34 private ArrayList<HashMap<String, ?>> availableTeamsList, selectedTeamsList; |
33 private int minTeams = 2; |
35 private int minTeams = 2; |
34 |
36 |
84 return false; |
86 return false; |
85 } |
87 } |
86 } |
88 } |
87 }; |
89 }; |
88 |
90 |
|
91 public void onActivityResult(int requestCode, int resultCode, Intent data){ |
|
92 if(requestCode == ACTIVITY_TEAMCREATION){ |
|
93 if(resultCode == Activity.RESULT_OK){ |
|
94 updateListViews(); |
|
95 } |
|
96 }else{ |
|
97 super.onActivityResult(requestCode, resultCode, data); |
|
98 } |
|
99 } |
|
100 |
|
101 private void updateListViews(){ |
|
102 unregisterForContextMenu(availableTeams); |
|
103 availableTeamsList = FrontendDataUtils.getTeams(this); |
|
104 for(HashMap<String, ?> hashmap : selectedTeamsList){ |
|
105 String name = (String)hashmap.get("txt"); |
|
106 for(HashMap<String, ?> hash : availableTeamsList){ |
|
107 if(name.equals((String)hash.get("txt"))){ |
|
108 availableTeamsList.remove(hash); |
|
109 } |
|
110 } |
|
111 } |
|
112 SimpleAdapter adapter = new SimpleAdapter(this, availableTeamsList, R.layout.team_selection_entry, new String[]{"txt", "img"}, new int[]{R.id.txtName, R.id.imgDifficulty}); |
|
113 availableTeams.setAdapter(adapter); |
|
114 registerForContextMenu(availableTeams); |
|
115 availableTeams.setOnItemClickListener(availableClicker); |
|
116 |
|
117 |
|
118 } |
|
119 |
89 private void setTeamColor(int position, int color){ |
120 private void setTeamColor(int position, int color){ |
90 View iv = ((RelativeLayout)selectedTeams.getChildAt(position)).findViewById(R.id.teamCount); |
121 View iv = ((RelativeLayout)selectedTeams.getChildAt(position)).findViewById(R.id.teamCount); |
91 setTeamColor(iv, color); |
122 setTeamColor(iv, color); |
92 } |
123 } |
93 private void setTeamColor(View iv, int color){ |
124 private void setTeamColor(View iv, int color){ |
140 super.onBackPressed(); |
171 super.onBackPressed(); |
141 } |
172 } |
142 |
173 |
143 private OnClickListener addTeamClicker = new OnClickListener(){ |
174 private OnClickListener addTeamClicker = new OnClickListener(){ |
144 public void onClick(View v) { |
175 public void onClick(View v) { |
145 startActivity(new Intent(TeamSelectionActivity.this, TeamCreatorActivity.class)); |
176 startActivityForResult(new Intent(TeamSelectionActivity.this, TeamCreatorActivity.class), ACTIVITY_TEAMCREATION); |
146 |
|
147 } |
177 } |
148 }; |
178 }; |
149 |
179 |
150 private OnClickListener backClicker = new OnClickListener(){ |
180 private OnClickListener backClicker = new OnClickListener(){ |
151 public void onClick(View v){ |
181 public void onClick(View v){ |
190 return true; |
220 return true; |
191 case 2://edit |
221 case 2://edit |
192 Intent i = new Intent(TeamSelectionActivity.this, TeamCreatorActivity.class); |
222 Intent i = new Intent(TeamSelectionActivity.this, TeamCreatorActivity.class); |
193 Team t = (Team)availableTeamsList.get(position).get("team"); |
223 Team t = (Team)availableTeamsList.get(position).get("team"); |
194 i.putExtra("team", t); |
224 i.putExtra("team", t); |
195 startActivity(i); |
225 startActivityForResult(i, ACTIVITY_TEAMCREATION); |
196 return true; |
226 return true; |
197 } |
227 } |
198 return false; |
228 return false; |
199 } |
229 } |
200 |
230 |