package com.mapsaurus.paneslayout;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.view.MenuItem;
import android.content.res.Resources;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.view.View;
public abstract class ActivityDelegate {
private PanesActivity mActivity;
public ActivityDelegate(PanesActivity a) {
mActivity = a;
}
/**
* Save the state of the panes
*/
public abstract void onSaveInstanceState(Bundle savedInstanceState);
/**
* onCreate
*/
public abstract void onCreate(Bundle savedInstanceState);
/* *********************************************************************
* Adding, removing, getting fragments
* ********************************************************************* */
/**
* Add a fragment as a menu
*/
public abstract void addFragment(Fragment prevFragment, Fragment newFragment);
/**
* Add a fragment as a menu
*/
public abstract void setMenuFragment(Fragment f);
/**
* Clear all fragments from stack
*/
public abstract void clearFragments();
/**
* Get menu framgent
*/
public abstract Fragment getMenuFragment();
/**
* Get top framgent
*/
public abstract Fragment getTopFragment();
/**
* Show the menu
*/
public abstract void showMenu();
/* *********************************************************************
* Deal with over-riding activity methods
* ********************************************************************* */
/**
* Deal with back pressed
*/
public abstract boolean onBackPressed();
/**
* Deal with menu buttons
*/
public abstract boolean onOptionsItemSelected(MenuItem item);
/* *********************************************************************
* Wrapper functions to make coding a delegate less annoying
* ********************************************************************* */
protected final PanesActivity getActivity() {
return mActivity;
}
protected final void setContentView(int layoutResId) {
mActivity.setContentView(layoutResId);
}
protected final ActionBar getSupportActionBar() {
return mActivity.getSupportActionBar();
}
protected final Resources getResources() {
return mActivity.getResources();
}
protected final FragmentManager getSupportFragmentManager() {
return mActivity.getSupportFragmentManager();
}
protected final View findViewById(int id) {
return mActivity.findViewById(id);
}
protected final void updateFragment(Fragment f) {
mActivity.updateFragment(f);
}
}