package net.tasksnow; import android.app.Fragment; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import net.tasksnow.model.cards.Label; import net.tasksnow.model.cards.Project; import net.tasksnow.model.sqlite.DatabaseHandler; import net.tasksnow.view.LabelListFragment; import net.tasksnow.view.ProjectListFragment; import net.tasksnow.view.StatisticsListFragment; import net.tasksnow.view.TasksListFragment; import net.tasksnow.view.slidingmenu.MenuContent; import net.tasksnow.view.slidingmenu.MenuContent.MenuCategory; import net.tasksnow.view.slidingmenu.MenuSectionItem; import net.tasksnow.view.slidingmenu.MenuSubItems; import net.tasksnow.view.slidingmenu.SlidingMenuActivity; /** * @author D056943 * @since 16:52:20 - 29.12.2012 * @project cFoldersDemo */ public class MainActivity extends SlidingMenuActivity { // =========================================================== // Constants // =========================================================== // =========================================================== // Fields // =========================================================== // =========================================================== // Constructors // =========================================================== // =========================================================== // Methods for/from SuperClass/Interfaces // =========================================================== //Firstly SlidingMenuActivity is started, it calls the onGenerateListAdapter method @Override public MenuContent onGenerateListAdapter() { MenuContent content = new MenuContent(); DatabaseHandler dbHandler = ((TaskNowApplication) this.getApplication()).getDbHandler(); MenuSectionItem recent = new MenuSectionItem("Recent", R.drawable.ic_action_recent, new TasksListFragment()); content.addCategory(recent); MenuSectionItem labelSection = new MenuSectionItem("Labels", R.drawable.ic_action_labels, new LabelListFragment()); MenuCategory category = content.new MenuCategory(labelSection); //Load the different labels as subcategory of "Labels" for (Label label : dbHandler.getAllLabels()) { //Creates a new TaskListFragment which is filled later by all labels which belong to the key which is put below Fragment fragment = new TasksListFragment(); Bundle bundle = new Bundle(); bundle.putSerializable(TasksListFragment.LABEL_FILTER_KEY, label); // bundle.putString(CardsListFragment.LABEL_FILTER_KEY, label.getValue()); fragment.setArguments(bundle); String number = "" + dbHandler.getNumberOfTasks(label); category.addItem(new MenuSubItems(label.getValue(), number, fragment)); } content.addCategory(category); MenuSectionItem projectSection = new MenuSectionItem("Projects", R.drawable.ic_action_project, new ProjectListFragment()); category = content.new MenuCategory(projectSection); //Load the different projects as subcategory of "Projects" and shows the number of containing items for (Project project : dbHandler.getAllProjects()) { Fragment fragment = new TasksListFragment(); Bundle bundle = new Bundle(); bundle.putSerializable(TasksListFragment.PROJECT_FILTER_KEY, project); fragment.setArguments(bundle); String number = "" + dbHandler.getNumberOfTasks(project); category.addItem(new MenuSubItems(project.getName(), number, fragment)); } content.addCategory(category); MenuSectionItem statistic = new MenuSectionItem("Statistics", R.drawable.ic_action_statistic, new StatisticsListFragment()); content.addCategory(statistic); MenuSectionItem settings = new MenuSectionItem("Settings", R.drawable.ic_action_settings, null); settings.setEnabled(false); content.addCategory(settings); content.setSelectedItem(recent); return content; } @Override public boolean onCreateOptionsMenu(Menu menu) { // this.getMenuInflater().inflate(R.menu.mainactivity_menu, menu); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { } return super.onOptionsItemSelected(item); } // =========================================================== // Methods // =========================================================== // =========================================================== // Getter & Setter // =========================================================== // =========================================================== // Inner and Anonymous Classes // =========================================================== }