package org.hansel.myAlert; /*This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. Created by Javier Mejia @zenyagami zenyagami@gmail.com */ import java.util.ArrayList; import org.hansel.myAlert.Log.Log; import org.hansel.myAlert.Utils.Util; import android.content.Intent; import android.content.res.Configuration; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; import android.widget.Toast; import com.actionbarsherlock.view.Menu; import com.actionbarsherlock.view.MenuInflater; import com.actionbarsherlock.view.MenuItem; import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GooglePlayServicesUtil; import com.viewpagerindicator.TabPageIndicator; public class MainActivity extends org.holoeverywhere.app.Activity{ /* (non-Javadoc) * @see android.support.v4.app.FragmentActivity#onResume() */ ViewPager mViewPager; @Override protected void onResume() { super.onResume(); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); } boolean presionaPanico; //private Rastreo mFragmentTwo; @Override protected void onCreate(Bundle savedInstanceState) { ServicioLeeBotonEncendido.login = MainActivity.this; startService(new Intent(MainActivity.this,ServicioLeeBotonEncendido.class)); // TODO Auto-generated method stub super.onCreate(savedInstanceState); presionaPanico = getIntent().getBooleanExtra("panico",false); Bundle data=null; if(presionaPanico) { data = new Bundle(); data.putBoolean("panico", presionaPanico); } setContentView(R.layout.tabs); PagerAdapter mPagerAdapter = new PagerAdapter(getSupportFragmentManager()); if(ConnectionResult.SUCCESS ==GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext())) { PanicButtonFragment mFragmentOne = new PanicButtonFragment(); mFragmentOne.setArguments(data); mPagerAdapter.addFragment(mFragmentOne,"Bot�n de P�nico"); }else { mPagerAdapter.addFragment(new NoPlayServicesFragment(), "Error"); } mViewPager = (ViewPager) super.findViewById(R.id.pager); mViewPager.setAdapter(mPagerAdapter); TabPageIndicator indicator = (TabPageIndicator)findViewById(R.id.indicator); indicator.setViewPager(mViewPager); mViewPager.setOffscreenPageLimit(2); // mViewPager.setCurrentItem(0); } @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); Log.v("onConfigurationChangedMain"); } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); if(outState!=null) { //outState.putBoolean("panico", presionaPanico); } } @Override public void onBackPressed() { //super.onBackPressed(); this.moveTaskToBack(true); /*if(mFragmentTwo!=null && mFragmentTwo.isTracking()) { Toast.makeText(getApplicationContext(), "No se puede salir durante el rastreo", Toast.LENGTH_SHORT).show(); }else { super.onBackPressed(); } */ } public class PagerAdapter extends FragmentPagerAdapter { @Override public CharSequence getPageTitle(int position) { return titulos.get(position); } private final ArrayList<Fragment> mFragments = new ArrayList<Fragment>(); private final ArrayList<String> titulos = new ArrayList<String>(); public PagerAdapter(FragmentManager manager) { super(manager); } public void addFragment(Fragment fragment,String title) { mFragments.add(fragment); titulos.add(title); notifyDataSetChanged(); } @Override public int getCount() { return mFragments.size(); } @Override public Fragment getItem(int position) { return mFragments.get(position); } } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater infla = getSupportMenuInflater(); infla.inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.CMD_PREFERENCES: if(!Util.isMyServiceRunning(getApplicationContext())) { startActivity(new Intent(this , Preferencias.class )); }else { Toast.makeText(getApplicationContext(), "No se peude modificar en este momento...", Toast.LENGTH_SHORT).show(); } return true; default: return false; } } }