Android Open Source - clinicalguide Homescreen Fragment






From Project

Back to project page clinicalguide.

License

The source code is released under:

Apache License

If you think the Android project clinicalguide listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package org.get.oxicam.clinicalguide.ui;
/*  w ww.j  a  v  a 2 s  . co  m*/
import java.util.ArrayList;
import java.util.HashMap;

import org.get.oxicam.clinicalguide.ClinicalGuideActivity;
import org.get.oxicam.clinicalguide.R;

import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.ListFragment;
import android.view.View;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.SimpleAdapter.ViewBinder;
import android.widget.TextView;

public class HomescreenFragment extends ListFragment {
  
  private ClinicalGuideActivity mActivity;
  private SimpleAdapter mAdapter;
  
  /**
   * Initializes the HomescreenFragment.
   */
  @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        
        mActivity = (ClinicalGuideActivity)getActivity();
    mActivity.setTitle("Home");
        
        // add some dummy data to the list view
        ArrayList<HomescreenListItem> items = new ArrayList<HomescreenListItem>();
        items.add(new HomescreenListItem(R.drawable.assessment_icon, R.string.homescreen_assessment, R.string.homescreen_assessment_description));
        items.add(new HomescreenListItem(R.drawable.followup_icon, R.string.homescreen_item2_title, R.string.homescreen_item2_description));
        items.add(new HomescreenListItem(R.drawable.patientdata_icon, R.string.homescreen_item3_title, R.string.homescreen_item3_description));
        items.add(new HomescreenListItem(R.drawable.exportdata_icon, R.string.homescreen_item4_title, R.string.homescreen_item4_description));
        
        populateList(items);
    }

  /**
   * Called if a item in the ListView is clicked.
   */
  @Override
  public void onListItemClick(ListView l, View v, int position, long id) {
    Fragment frag;
    Bundle args = new Bundle();
    
    switch(position) {
    case 0:
      // Assessment
      args = new Bundle();
      args.putString(PatientsFragment.ARG_KEY_NEXT_FRAGMENT, MainSymptomFragment.class.getName());
      frag = Fragment.instantiate(mActivity, PatientsFragment.class.getName(), args);
      mActivity.setContent(frag);
      break;
      
    case 1:
      // Follow-Up
      args = new Bundle();
      args.putString(PatientsFragment.ARG_KEY_NEXT_FRAGMENT, FollowUpFragment.class.getName());
      frag = Fragment.instantiate(mActivity, PatientsFragment.class.getName(), args);
      mActivity.setContent(frag);
      break;

    case 2:
      // Patient DB
      args = new Bundle();
      args.putString(PatientsFragment.ARG_KEY_NEXT_FRAGMENT, PatientDetailsFragment.class.getName());
      frag = Fragment.instantiate(mActivity, PatientsFragment.class.getName(), args);
      mActivity.setContent(frag);
      break;
    case 3:
      // Export DB
      args = new Bundle();
      args.putString(PatientsFragment.ARG_KEY_NEXT_FRAGMENT, ExportFragment.class.getName());
      frag = Fragment.instantiate(mActivity, ExportFragment.class.getName(), args);
      mActivity.setContent(frag);
      break;
    }
  }
  
  private void populateList(ArrayList<HomescreenListItem> items) {
    // populate a HashMap with all list items
    ArrayList<HashMap<String, Object>> itemData = new ArrayList<HashMap<String, Object>>();
    for(HomescreenListItem item : items) {
          HashMap<String, Object> map = new HashMap<String, Object>();
          map.put("icon", item.icon);
          map.put("title", mActivity.getString(item.title));
          map.put("description", mActivity.getResources().getString(item.description));
          map.put("accessory", "\uE75E");

          itemData.add(map);  
    }
      
    // Specify source tag to corresponding target ID mapping
        String[] sourceTags = {
            "icon",
            "title",
            "description",
            "accessory"
        };
        int[] targetIds = {
          R.id.itemIcon,
          R.id.itemTitle,
          R.id.itemDescription,
          R.id.accessoryView
        };
        
        // create the ListAdapter
        mAdapter = new SimpleAdapter(getActivity(), itemData, R.layout.homescreen_list_item, sourceTags, targetIds);
        mAdapter.setViewBinder(new HomescreenBinder());
        setListAdapter(mAdapter);
  }
  
  class HomescreenBinder implements ViewBinder {

    @Override
    public boolean setViewValue(View view, Object data, String textRepresentation) {
      if (view.getId() == R.id.itemTitle || view.getId() == R.id.itemDescription) {
        String text = (String)data;
        TextView textView = (TextView)view;
        textView.setText(text);
      }
      else if (view.getId() == R.id.itemIcon) {
        ImageView icon = (ImageView)view;
        if(data != null) {
          Drawable img = mActivity.getResources().getDrawable((Integer)data);//(Drawable)data;
          icon.setImageDrawable(img);
        } else {
          icon.setVisibility(View.GONE);
        }
      }
      else if (view.getId() == R.id.accessoryView) {
        TextView textView = (TextView)view;
            Typeface font = Typeface.createFromAsset(mActivity.getAssets(), "fontello.ttf");  
            textView.setTypeface(font);
      }
      return true;
    }
  }

}




Java Source Code List

.PatientDetailsDataSource.java
org.get.oxicam.clinicalguide.ClinicalGuideActivity.java
org.get.oxicam.clinicalguide.FileUtils.java
org.get.oxicam.clinicalguide.LoginActivity.java
org.get.oxicam.clinicalguide.db.DatabaseHelper.java
org.get.oxicam.clinicalguide.db.Database.java
org.get.oxicam.clinicalguide.db.FollowupDataSource.java
org.get.oxicam.clinicalguide.db.FollowupDetails.java
org.get.oxicam.clinicalguide.db.FollowupSQLHelper.java
org.get.oxicam.clinicalguide.db.HistoryDetailsDataSource.java
org.get.oxicam.clinicalguide.db.HistoryDetailsSQLHelper.java
org.get.oxicam.clinicalguide.db.HistoryDetails.java
org.get.oxicam.clinicalguide.db.PatientDetailsSQLHelper.java
org.get.oxicam.clinicalguide.db.PatientDetails.java
org.get.oxicam.clinicalguide.db.RegistrationValidator.java
org.get.oxicam.clinicalguide.db.Validator.java
org.get.oxicam.clinicalguide.encryption.Encryption.java
org.get.oxicam.clinicalguide.ui.AnswersReviewFragment.java
org.get.oxicam.clinicalguide.ui.AssessmentDetailFragment.java
org.get.oxicam.clinicalguide.ui.ClassificationFragment.java
org.get.oxicam.clinicalguide.ui.ClassificationListItem.java
org.get.oxicam.clinicalguide.ui.DatePickerFragment.java
org.get.oxicam.clinicalguide.ui.ExportFragment.java
org.get.oxicam.clinicalguide.ui.ExportscreenListItem.java
org.get.oxicam.clinicalguide.ui.FollowUpFragment.java
org.get.oxicam.clinicalguide.ui.FormScreenFragment.java
org.get.oxicam.clinicalguide.ui.HomescreenFragment.java
org.get.oxicam.clinicalguide.ui.HomescreenListItem.java
org.get.oxicam.clinicalguide.ui.ListItemOnClickListener.java
org.get.oxicam.clinicalguide.ui.MainSymptomFragment.java
org.get.oxicam.clinicalguide.ui.MainSymptomListItem.java
org.get.oxicam.clinicalguide.ui.NumberTickerValueChangeListener.java
org.get.oxicam.clinicalguide.ui.NumberTicker.java
org.get.oxicam.clinicalguide.ui.PatientDetailsFragment.java
org.get.oxicam.clinicalguide.ui.PatientHistoryFragment.java
org.get.oxicam.clinicalguide.ui.PatientsFragment.java
org.get.oxicam.clinicalguide.ui.QuestionListItem.java
org.get.oxicam.clinicalguide.ui.QuestionnaireFragment.java
org.get.oxicam.clinicalguide.ui.StatScreenFragment.java
org.get.oxicam.clinicalguide.ui.SummaryScreenFragment.java
org.get.oxicam.clinicalguide.ui.TextViewCustomFont.java
org.get.oxicam.clinicalguide.ui.TreatmentConfirmationDialog.java
org.get.oxicam.clinicalguide.ui.TreatmentFragment.java
org.get.oxicam.clinicalguide.ui.TreatmentListItem.java
org.get.oxicam.clinicalguide.ui.ViewDetailScreenFragment.java
org.get.oxicam.clinicalguide.xml.CGFormParser.java
org.get.oxicam.clinicalguide.xml.CGParser.java
org.get.oxicam.clinicalguide.xml.CGStatsParser.java
org.get.oxicam.clinicalguide.xml.DateHelper.java
org.get.oxicam.clinicalguide.xml.FormGenerator.java
org.get.oxicam.clinicalguide.xml.ParserHelper.java
org.get.oxicam.clinicalguide.xml.StatsGenerator.java
org.get.oxicam.clinicalguide.xml.XMLHandler.java
org.get.oxicam.clinicalguide.xml.data.AbstractAnswer.java
org.get.oxicam.clinicalguide.xml.data.Annotation.java
org.get.oxicam.clinicalguide.xml.data.AnswerValidator.java
org.get.oxicam.clinicalguide.xml.data.Answer.java
org.get.oxicam.clinicalguide.xml.data.Assessment.java
org.get.oxicam.clinicalguide.xml.data.CombinedAnswer.java
org.get.oxicam.clinicalguide.xml.data.FollowUp.java
org.get.oxicam.clinicalguide.xml.data.FormQuery.java
org.get.oxicam.clinicalguide.xml.data.Info.java
org.get.oxicam.clinicalguide.xml.data.Option.java
org.get.oxicam.clinicalguide.xml.data.PatientAttribute.java
org.get.oxicam.clinicalguide.xml.data.Question.java
org.get.oxicam.clinicalguide.xml.data.Questionnaire.java
org.get.oxicam.clinicalguide.xml.data.SimpleAnswer.java
org.get.oxicam.clinicalguide.xml.data.Symptom.java
org.get.oxicam.clinicalguide.xml.data.TreatmentAction.java
org.get.oxicam.clinicalguide.xml.data.Treatment.java
org.get.oxicam.clinicalguide.xml.data.User.java
org.get.oxicam.clinicalguide.xml.forms.FormCell.java
org.get.oxicam.clinicalguide.xml.forms.FormColumn.java
org.get.oxicam.clinicalguide.xml.forms.FormDuration.java
org.get.oxicam.clinicalguide.xml.forms.Form.java
org.get.oxicam.clinicalguide.xml.query.QueryHelper.java
org.get.oxicam.clinicalguide.xml.query.QueryResultCell.java
org.get.oxicam.clinicalguide.xml.query.QueryResultRow.java
org.get.oxicam.clinicalguide.xml.query.QueryResultTable.java
org.get.oxicam.clinicalguide.xml.stats.AbstractStatsQuestion.java
org.get.oxicam.clinicalguide.xml.stats.StatsAnswerHolder.java
org.get.oxicam.clinicalguide.xml.stats.StatsColumnCompare.java
org.get.oxicam.clinicalguide.xml.stats.StatsComparatorOperator.java
org.get.oxicam.clinicalguide.xml.stats.StatsCompareConstraint.java
org.get.oxicam.clinicalguide.xml.stats.StatsConstraint.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionAverage.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionCount.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionExtrema.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionFactory.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionList.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionPercentage.java
org.get.oxicam.clinicalguide.xml.stats.StatsQuestionRatio.java
org.get.oxicam.clinicalguide.xml.stats.StatsSubject.java
org.get.oxicam.clinicalguide.xml.stats.StatsTimespan.java
org.get.oxicam.clinicalguide.xml.stats.Stats.java