package fr.istic.m2.sit.ihm;
import android.app.ActionBar;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.pm.ActivityInfo;
import android.graphics.Color;
import android.graphics.Point;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import com.google.android.maps.MapActivity;
import fr.istic.m2.fragment.ItemsFragment;
import fr.istic.m2.fragment.MapFragment;
public class MainActivity extends MapActivity {
public static final int ITEMS_ID = 1;
public static final int MAP_ID = 2;
public static int height, width;
private boolean visible;
private int menuWidth;
private FragmentManager fm;
public FrameLayout flItems, flMap;
public ItemsFragment items;
public MapFragment map;
public LinearLayout layout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
Point size = new Point();
getWindowManager().getDefaultDisplay().getSize(size);
height = size.x;
width = size.y;
fm = getFragmentManager();
layout = new LinearLayout(this);
items = new ItemsFragment();
map = new MapFragment();
flItems = new FrameLayout(this);
flItems.setId(ITEMS_ID);
flItems.setBackgroundColor(Color.LTGRAY);
flMap = new FrameLayout(this);
flMap.setId(MAP_ID);
FragmentTransaction tr = fm.beginTransaction();
tr.add(ITEMS_ID, items);
tr.add(MAP_ID, map);
tr.commit();
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT);
params.weight = 2;
layout.addView(flItems, params);
params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT);
params.weight = 1;
layout.addView(flMap, params);
setContentView(layout);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
visible = true;
menuWidth = findViewById(MainActivity.ITEMS_ID).getLayoutParams().width;
ActionBar acBar = getActionBar();
acBar.setDisplayShowCustomEnabled(true);
acBar.setDisplayShowHomeEnabled(false);
acBar.setDisplayShowTitleEnabled(false);
RelativeLayout menuLayout = new RelativeLayout(this);
Button btn = new Button(this);
btn.setText("+");
btn.setTextSize(30);
btn.setTextColor(Color.WHITE);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.w("LOCK", "click");
if (visible) {
((LinearLayout.LayoutParams) findViewById(MainActivity.ITEMS_ID).getLayoutParams()).width = 2;
visible = false;
}
else {
((LinearLayout.LayoutParams) findViewById(MainActivity.ITEMS_ID).getLayoutParams()).width = menuWidth;
visible = true;
}
setContentView(layout);
}
});
menuLayout.addView(btn);
acBar.setCustomView(menuLayout);
return true;
}
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}
}