private void setupDrawerContent()

in app/src/main/java/org/apache/taverna/mobile/ui/DashboardActivity.java [117:250]


    private void setupDrawerContent(final NavigationView navigationView) {

        navigationView.setNavigationItemSelectedListener(
                new NavigationView.OnNavigationItemSelectedListener() {

                    @Override
                    public boolean onNavigationItemSelected(MenuItem menuItem) {

                        switch (menuItem.getItemId()) {
                            case R.id.nav_workflows:

                                fragment = new WorkflowFragment();
                                ActivityUtils.addFragmentToActivity(getSupportFragmentManager(),
                                        fragment, R.id.frame_container);

                                menuItem.setChecked(true);
                                mDrawerLayout.closeDrawers();
                                toolbar.setTitle(R.string.title_nav_all_workflows);

                                return true;

                            case R.id.nav_my_workflows:

                                fragment = new MyWorkflowFragment();
                                ActivityUtils.addFragmentToActivity(getSupportFragmentManager(),
                                        fragment, R.id.frame_container);

                                menuItem.setChecked(true);
                                mDrawerLayout.closeDrawers();
                                toolbar.setTitle(R.string.title_nav_my_workflows);
                                return true;

                            case R.id.nav_favourite_workflow:

                                fragment = new FavouriteWorkflowsFragment();
                                ActivityUtils.addFragmentToActivity(getSupportFragmentManager(),
                                        fragment, R.id.frame_container);

                                menuItem.setChecked(true);
                                mDrawerLayout.closeDrawers();
                                toolbar.setTitle(R.string.title_nav_favourite_workflows);
                                return true;

                            case R.id.nav_announcement:

                                fragment = new AnnouncementFragment();
                                ActivityUtils.addFragmentToActivity(getSupportFragmentManager(),
                                        fragment, R.id.frame_container);

                                menuItem.setChecked(true);
                                mDrawerLayout.closeDrawers();
                                toolbar.setTitle(R.string.title_nav_announcement);
                                return true;


                            case R.id.nav_usage:

                                Intent intent = new Intent(DashboardActivity.this,
                                        UsageActivity.class);
                                startActivity(intent);
                                mDrawerLayout.closeDrawers();
                                return true;

                            case R.id.nav_about:

                                TableLayout about = (TableLayout) getLayoutInflater().inflate(R
                                        .layout.about, navigationView, false);

                                dialog.setCanceledOnTouchOutside(true);
                                dialog.setTitle(getString(R.string.title_about));
                                dialog.setContentView(about);
                                dialog.show();
                                mDrawerLayout.closeDrawers();
                                return true;

                            case R.id.os_licences:

                                WebView webView = (WebView) getLayoutInflater().inflate(R.layout
                                        .fragment_licence, navigationView, false);

                                webView.getSettings().setUseWideViewPort(true);
                                webView.loadUrl("file:///android_asset/licences.html");

                                AlertDialog alertDialog = new AlertDialog.Builder(DashboardActivity
                                        .this, R.style.Theme_Taverna_Dialog)
                                        .setTitle(getString(R.string.title_nav_os_licences))
                                        .setView(webView)
                                        .setPositiveButton(android.R.string.ok, null)
                                        .create();

                                alertDialog.show();
                                mDrawerLayout.closeDrawers();
                                return true;

                            case R.id.apache_licences:

                                WebView lWebView = (WebView) getLayoutInflater().inflate(R.layout
                                        .fragment_licence, navigationView, false);

                                lWebView.getSettings().setUseWideViewPort(true);
                                lWebView.
                                        loadUrl("file:///android_asset/apache_licence_notice.html");

                                AlertDialog lAlertDialog = new AlertDialog.Builder(DashboardActivity
                                        .this, R.style.Theme_Taverna_Dialog)
                                        .setTitle(getString(R.string.title_nav_apache_licences))
                                        .setView(lWebView)
                                        .setPositiveButton(android.R.string.ok, null)
                                        .create();

                                lAlertDialog.show();
                                mDrawerLayout.closeDrawers();
                                return true;

                            case R.id.nav_settings:

                                ActivityUtils.addFragmentToActivity(getSupportFragmentManager(),
                                        new SettingFragment(), R.id.frame_container);

                                menuItem.setChecked(true);
                                mDrawerLayout.closeDrawers();
                                toolbar.setTitle(R.string.title_nav_settings);
                                return true;

                            case R.id.nav_logout:

                                signOutConfirmation();
                                return true;

                        }
                        return true;
                    }
                });
    }