// Path: app/src/main/java/com/stay4it/core/BaseListActivity.java
// public abstract class BaseListActivity<T> extends BaseActivity implements PullRecycler.OnRecyclerRefreshListener {
//     protected BaseListAdapter adapter;
//     protected ArrayList<T> mDataList;
//     protected PullRecycler recycler;
// 
//     @Override
//     protected void setUpContentView() {
//         setContentView(R.layout.activity_base_list, -1);
//     }
// 
//     @Override
//     protected void setUpView() {
//         recycler = (PullRecycler) findViewById(R.id.pullRecycler);
//     }
// 
//     @Override
//     protected void setUpData() {
//         setUpAdapter();
//         recycler.setOnRefreshListener(this);
//         recycler.setLayoutManager(getLayoutManager());
//         recycler.addItemDecoration(getItemDecoration());
//         recycler.setAdapter(adapter);
//     }
// 
//     protected void setUpAdapter() {
//         adapter = new ListAdapter();
//     }
// 
//     protected ILayoutManager getLayoutManager() {
//         return new MyLinearLayoutManager(getApplicationContext());
//     }
// 
//     protected RecyclerView.ItemDecoration getItemDecoration() {
//         return new DividerItemDecoration(getApplicationContext(), R.drawable.list_divider);
//     }
// 
//     public class ListAdapter extends BaseListAdapter {
// 
//         @Override
//         protected BaseViewHolder onCreateNormalViewHolder(ViewGroup parent, int viewType) {
//             return getViewHolder(parent, viewType);
//         }
// 
//         @Override
//         protected int getDataCount() {
//             return mDataList != null ? mDataList.size() : 0;
//         }
// 
//         @Override
//         protected int getDataViewType(int position) {
//             return getItemType(position);
//         }
// 
//         @Override
//         public boolean isSectionHeader(int position) {
//             return BaseListActivity.this.isSectionHeader(position);
//         }
//     }
// 
//     protected boolean isSectionHeader(int position) {
//         return false;
//     }
//     protected int getItemType(int position) {
//         return 0;
//     }
//     protected abstract BaseViewHolder getViewHolder(ViewGroup parent, int viewType);
// 
// }
// 
// Path: app/src/main/java/com/stay4it/model/Module.java
// public class Module {
//     public String moduleName;
//     public String moduleIcon;
//     public Class<? extends BaseActivity> moduleTargetClass;
// 
//     public Module(String moduleName, Class<? extends BaseActivity> moduleTargetClass) {
//         this.moduleName = moduleName;
//         this.moduleTargetClass = moduleTargetClass;
//     }
// }
// 
// Path: app/src/main/java/com/stay4it/widgets/pull/BaseViewHolder.java
// public abstract class BaseViewHolder extends RecyclerView.ViewHolder {
//     public BaseViewHolder(View itemView) {
//         super(itemView);
//         itemView.setOnClickListener(new View.OnClickListener() {
//             @Override
//             public void onClick(View v) {
//                 onItemClick(v, getAdapterPosition());
//             }
//         });
//     }
// 
//     public abstract void onBindViewHolder(int position);
//     public abstract void onItemClick(View view, int position);
// }


import android.content.Intent;
import android.net.Uri;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.stay4it.R;
import com.stay4it.core.BaseListActivity;
import com.stay4it.model.Module;
import com.stay4it.widgets.pull.BaseViewHolder;
import java.util.ArrayList;
package com.stay4it.sample;




/**
 * Created by Stay on 2/2/16.
 * Powered by www.stay4it.com
 */
public class HomeActivity extends BaseListActivity<Module> {

    @Override
    protected void setUpTitle(int titleResId) {
        super.setUpTitle(R.string.title_framework_main);
    }

// Path: app/src/main/java/com/stay4it/core/BaseListActivity.java
// public abstract class BaseListActivity<T> extends BaseActivity implements PullRecycler.OnRecyclerRefreshListener {
//     protected BaseListAdapter adapter;
//     protected ArrayList<T> mDataList;
//     protected PullRecycler recycler;
// 
//     @Override
//     protected void setUpContentView() {
//         setContentView(R.layout.activity_base_list, -1);
//     }
// 
//     @Override
//     protected void setUpView() {
//         recycler = (PullRecycler) findViewById(R.id.pullRecycler);
//     }
// 
//     @Override
//     protected void setUpData() {
//         setUpAdapter();
//         recycler.setOnRefreshListener(this);
//         recycler.setLayoutManager(getLayoutManager());
//         recycler.addItemDecoration(getItemDecoration());
//         recycler.setAdapter(adapter);
//     }
// 
//     protected void setUpAdapter() {
//         adapter = new ListAdapter();
//     }
// 
//     protected ILayoutManager getLayoutManager() {
//         return new MyLinearLayoutManager(getApplicationContext());
//     }
// 
//     protected RecyclerView.ItemDecoration getItemDecoration() {
//         return new DividerItemDecoration(getApplicationContext(), R.drawable.list_divider);
//     }
// 
//     public class ListAdapter extends BaseListAdapter {
// 
//         @Override
//         protected BaseViewHolder onCreateNormalViewHolder(ViewGroup parent, int viewType) {
//             return getViewHolder(parent, viewType);
//         }
// 
//         @Override
//         protected int getDataCount() {
//             return mDataList != null ? mDataList.size() : 0;
//         }
// 
//         @Override
//         protected int getDataViewType(int position) {
//             return getItemType(position);
//         }
// 
//         @Override
//         public boolean isSectionHeader(int position) {
//             return BaseListActivity.this.isSectionHeader(position);
//         }
//     }
// 
//     protected boolean isSectionHeader(int position) {
//         return false;
//     }
//     protected int getItemType(int position) {
//         return 0;
//     }
//     protected abstract BaseViewHolder getViewHolder(ViewGroup parent, int viewType);
// 
// }
// 
// Path: app/src/main/java/com/stay4it/model/Module.java
// public class Module {
//     public String moduleName;
//     public String moduleIcon;
//     public Class<? extends BaseActivity> moduleTargetClass;
// 
//     public Module(String moduleName, Class<? extends BaseActivity> moduleTargetClass) {
//         this.moduleName = moduleName;
//         this.moduleTargetClass = moduleTargetClass;
//     }
// }
// 
// Path: app/src/main/java/com/stay4it/widgets/pull/BaseViewHolder.java
// public abstract class BaseViewHolder extends RecyclerView.ViewHolder {
//     public BaseViewHolder(View itemView) {
//         super(itemView);
//         itemView.setOnClickListener(new View.OnClickListener() {
//             @Override
//             public void onClick(View v) {
//                 onItemClick(v, getAdapterPosition());
//             }
//         });
//     }
// 
//     public abstract void onBindViewHolder(int position);
//     public abstract void onItemClick(View view, int position);
// }


// Path: app/src/main/java/com/stay4it/sample/HomeActivity.java
import android.content.Intent;
import android.net.Uri;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.stay4it.R;
import com.stay4it.core.BaseListActivity;
import com.stay4it.model.Module;
import com.stay4it.widgets.pull.BaseViewHolder;
import java.util.ArrayList;

package com.stay4it.sample;




/**
 * Created by Stay on 2/2/16.
 * Powered by www.stay4it.com
 */
public class HomeActivity extends BaseListActivity<Module> {

    @Override
    protected void setUpTitle(int titleResId) {
        super.setUpTitle(R.string.title_framework_main);
    }

    @Override