project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/RoomPlayerlistFragment.java
changeset 7582 714310efad8f
parent 7508 763d3961400b
child 7584 7831c84cc644
equal deleted inserted replaced
7580:c92596feac0d 7582:714310efad8f
     1 package org.hedgewars.hedgeroid;
     1 package org.hedgewars.hedgeroid;
     2 
     2 
     3 import org.hedgewars.hedgeroid.R;
     3 import org.hedgewars.hedgeroid.R;
     4 import org.hedgewars.hedgeroid.Datastructures.GameConfig;
       
     5 import org.hedgewars.hedgeroid.Datastructures.Player;
     4 import org.hedgewars.hedgeroid.Datastructures.Player;
     6 import org.hedgewars.hedgeroid.Datastructures.PlayerInRoom;
     5 import org.hedgewars.hedgeroid.Datastructures.PlayerInRoom;
     7 import org.hedgewars.hedgeroid.netplay.Netplay;
     6 import org.hedgewars.hedgeroid.netplay.Netplay;
     8 import org.hedgewars.hedgeroid.netplay.RunGameListener;
       
     9 
     7 
    10 import android.content.Intent;
       
    11 import android.os.Bundle;
     8 import android.os.Bundle;
    12 import android.support.v4.app.ListFragment;
     9 import android.support.v4.app.ListFragment;
    13 import android.view.ContextMenu;
    10 import android.view.ContextMenu;
    14 import android.view.ContextMenu.ContextMenuInfo;
    11 import android.view.ContextMenu.ContextMenuInfo;
    15 import android.view.LayoutInflater;
    12 import android.view.LayoutInflater;
    19 import android.view.ViewGroup;
    16 import android.view.ViewGroup;
    20 import android.widget.AdapterView;
    17 import android.widget.AdapterView;
    21 import android.widget.AdapterView.AdapterContextMenuInfo;
    18 import android.widget.AdapterView.AdapterContextMenuInfo;
    22 import android.widget.AdapterView.OnItemClickListener;
    19 import android.widget.AdapterView.OnItemClickListener;
    23 
    20 
    24 public class RoomPlayerlistFragment extends ListFragment implements OnItemClickListener, RunGameListener {
    21 public class RoomPlayerlistFragment extends ListFragment implements OnItemClickListener {
    25 	private Netplay netplay;
    22 	private Netplay netplay;
    26 	private RoomPlayerlistAdapter adapter;
    23 	private RoomPlayerlistAdapter adapter;
    27 	
    24 	
    28 	@Override
    25 	@Override
    29 	public void onCreate(Bundle savedInstanceState) {
    26 	public void onCreate(Bundle savedInstanceState) {
    30 		super.onCreate(savedInstanceState);
    27 		super.onCreate(savedInstanceState);
    31 		netplay = Netplay.getAppInstance(getActivity().getApplicationContext());
    28 		netplay = Netplay.getAppInstance(getActivity().getApplicationContext());
    32 		netplay.registerRunGameListener(this);
       
    33 		adapter = new RoomPlayerlistAdapter();
    29 		adapter = new RoomPlayerlistAdapter();
    34 		adapter.setSource(netplay.roomPlayerlist);
    30 		adapter.setSource(netplay.roomPlayerlist);
    35 		setListAdapter(adapter);
    31 		setListAdapter(adapter);
    36 	}
    32 	}
    37 
    33 
    38 	@Override
    34 	@Override
    39 	public void onDestroy() {
    35 	public void onDestroy() {
    40 		super.onDestroy();
    36 		super.onDestroy();
    41 		adapter.invalidate();
    37 		adapter.invalidate();
    42 		netplay.unregisterRunGameListener(this);
       
    43 	}
    38 	}
    44 	
    39 	
    45 	@Override
    40 	@Override
    46 	public void onActivityCreated(Bundle savedInstanceState) {
    41 	public void onActivityCreated(Bundle savedInstanceState) {
    47 		super.onActivityCreated(savedInstanceState);
    42 		super.onActivityCreated(savedInstanceState);
    91 		Player player = adapter.getItem(position).player;
    86 		Player player = adapter.getItem(position).player;
    92 		if(player.name.equals(netplay.getPlayerName())) {
    87 		if(player.name.equals(netplay.getPlayerName())) {
    93 			netplay.sendToggleReady();
    88 			netplay.sendToggleReady();
    94 		}
    89 		}
    95 	}
    90 	}
    96 	
       
    97 	// TODO this is really the wrong place for this...
       
    98 	public void runGame(GameConfig config) {
       
    99 		SDLActivity.startConfig = config;
       
   100 		SDLActivity.startNetgame = true;
       
   101 		startActivity(new Intent(getActivity().getApplicationContext(), SDLActivity.class));
       
   102 	}
       
   103 }
    91 }