41 import android.widget.ImageView; |
41 import android.widget.ImageView; |
42 import android.widget.ListView; |
42 import android.widget.ListView; |
43 import android.widget.RelativeLayout; |
43 import android.widget.RelativeLayout; |
44 import android.widget.SimpleAdapter; |
44 import android.widget.SimpleAdapter; |
45 import android.widget.SimpleAdapter.ViewBinder; |
45 import android.widget.SimpleAdapter.ViewBinder; |
|
46 import android.widget.TextView; |
46 |
47 |
47 public class TeamSelectionActivity extends Activity{ |
48 public class TeamSelectionActivity extends Activity{ |
48 |
49 |
49 private static final int ACTIVITY_TEAMCREATION = 0; |
50 private static final int ACTIVITY_TEAMCREATION = 0; |
50 |
51 |
51 private ImageButton addTeam, back; |
52 private ImageButton addTeam, back; |
52 private ListView availableTeams, selectedTeams; |
53 private ListView availableTeams, selectedTeams; |
53 private ArrayList<HashMap<String, Object>> availableTeamsList, selectedTeamsList; |
54 private ArrayList<HashMap<String, Object>> availableTeamsList, selectedTeamsList; |
|
55 private TextView txtInfo; |
54 private int minTeams = 2; |
56 private int minTeams = 2; |
55 |
57 |
56 public void onCreate(Bundle savedInstanceState){ |
58 public void onCreate(Bundle savedInstanceState){ |
57 super.onCreate(savedInstanceState); |
59 super.onCreate(savedInstanceState); |
58 |
60 |
59 setContentView(R.layout.team_selector); |
61 setContentView(R.layout.team_selector); |
60 |
62 |
61 addTeam = (ImageButton) findViewById(R.id.btnAdd); |
63 addTeam = (ImageButton) findViewById(R.id.btnAdd); |
62 back = (ImageButton) findViewById(R.id.btnBack); |
64 back = (ImageButton) findViewById(R.id.btnBack); |
63 |
65 txtInfo = (TextView) findViewById(R.id.txtInfo); |
|
66 |
64 addTeam.setOnClickListener(addTeamClicker); |
67 addTeam.setOnClickListener(addTeamClicker); |
65 back.setOnClickListener(backClicker); |
68 back.setOnClickListener(backClicker); |
66 |
69 |
67 availableTeams = (ListView) findViewById(R.id.availableTeams); |
70 availableTeams = (ListView) findViewById(R.id.availableTeams); |
68 availableTeamsList = FrontendDataUtils.getTeams(this); |
71 availableTeamsList = FrontendDataUtils.getTeams(this); |
88 adapter = new SimpleAdapter(this, selectedTeamsList, R.layout.team_selection_entry, new String[]{"txt", "img", "color", "count"}, new int[]{R.id.txtName, R.id.imgDifficulty, R.id.teamColor, R.id.teamCount}); |
91 adapter = new SimpleAdapter(this, selectedTeamsList, R.layout.team_selection_entry, new String[]{"txt", "img", "color", "count"}, new int[]{R.id.txtName, R.id.imgDifficulty, R.id.teamColor, R.id.teamCount}); |
89 adapter.setViewBinder(viewBinder); |
92 adapter.setViewBinder(viewBinder); |
90 selectedTeams.setAdapter(adapter); |
93 selectedTeams.setAdapter(adapter); |
91 selectedTeams.setOnItemClickListener(selectedClicker); |
94 selectedTeams.setOnItemClickListener(selectedClicker); |
92 |
95 |
|
96 txtInfo.setText(String.format(getResources().getString(R.string.teams_info_template), selectedTeams.getChildCount())); |
93 } |
97 } |
94 |
98 |
95 private ViewBinder viewBinder = new ViewBinder(){ |
99 private ViewBinder viewBinder = new ViewBinder(){ |
96 public boolean setViewValue(View view, Object data, String textRepresentation) { |
100 public boolean setViewValue(View view, Object data, String textRepresentation) { |
97 switch(view.getId()){ |
101 switch(view.getId()){ |
216 public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { |
220 public void onItemClick(AdapterView<?> arg0, View arg1, int position,long arg3) { |
217 availableTeamsList.add((HashMap<String, Object>) selectedTeamsList.get(position)); |
221 availableTeamsList.add((HashMap<String, Object>) selectedTeamsList.get(position)); |
218 selectedTeamsList.remove(position); |
222 selectedTeamsList.remove(position); |
219 ((SimpleAdapter)availableTeams.getAdapter()).notifyDataSetChanged(); |
223 ((SimpleAdapter)availableTeams.getAdapter()).notifyDataSetChanged(); |
220 ((SimpleAdapter)selectedTeams.getAdapter()).notifyDataSetChanged(); |
224 ((SimpleAdapter)selectedTeams.getAdapter()).notifyDataSetChanged(); |
|
225 |
|
226 txtInfo.setText(String.format(getResources().getString(R.string.teams_info_template), selectedTeamsList.size())); |
221 } |
227 } |
222 |
228 |
223 }; |
229 }; |
224 |
230 |
225 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuinfo){ |
231 public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuinfo){ |
264 |
270 |
265 selectedTeamsList.add(hash); |
271 selectedTeamsList.add(hash); |
266 availableTeamsList.remove(position); |
272 availableTeamsList.remove(position); |
267 ((SimpleAdapter)availableTeams.getAdapter()).notifyDataSetChanged(); |
273 ((SimpleAdapter)availableTeams.getAdapter()).notifyDataSetChanged(); |
268 ((SimpleAdapter)selectedTeams.getAdapter()).notifyDataSetChanged(); |
274 ((SimpleAdapter)selectedTeams.getAdapter()).notifyDataSetChanged(); |
|
275 |
|
276 txtInfo.setText(String.format(getResources().getString(R.string.teams_info_template), selectedTeamsList.size())); |
269 } |
277 } |
270 |
278 |
271 private void returnTeams(){ |
279 private void returnTeams(){ |
272 int teamsCount = selectedTeamsList.size(); |
280 int teamsCount = selectedTeamsList.size(); |
273 if(teamsCount >= minTeams){ |
281 if(teamsCount >= minTeams){ |