Android Open Source - SymptomManagement Review Fragment From Project Back to project page SymptomManagement .
License The source code is released under:
Apache License
If you think the Android project SymptomManagement 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 com.android.capstone.patient.checkin_now.ui;
/ * f r o m w w w . j a v a 2 s . c o m * /
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import com.android.capstone.R;
import com.android.capstone.patient.checkin_now.model.AbstractWizardModel;
import com.android.capstone.patient.checkin_now.model.ModelCallbacks;
import com.android.capstone.patient.checkin_now.model.Page;
import com.android.capstone.patient.checkin_now.model.ReviewItem;
public class ReviewFragment extends ListFragment implements ModelCallbacks {
private Callbacks mCallbacks;
private AbstractWizardModel mWizardModel;
private List<ReviewItem> mCurrentReviewItems;
private ReviewAdapter mReviewAdapter;
public ReviewFragment() {
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mReviewAdapter = new ReviewAdapter();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_page, container, false);
TextView titleView = (TextView) rootView.findViewById(android.R.id.title);
titleView.setText(R.string.review);
titleView.setTextColor(getResources().getColor(R.color.review_green));
ListView listView = (ListView) rootView.findViewById(android.R.id.list);
setListAdapter(mReviewAdapter);
listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
return rootView;
}
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
if (!(activity instanceof Callbacks)) {
throw new ClassCastException("Activity must implement fragment's callbacks" );
}
mCallbacks = (Callbacks) activity;
mWizardModel = mCallbacks.onGetModel();
mWizardModel.registerListener(this );
onPageTreeChanged();
}
@Override
public void onPageTreeChanged() {
onPageDataChanged(null);
}
@Override
public void onDetach() {
super.onDetach();
mCallbacks = null;
mWizardModel.unregisterListener(this );
}
@Override
public void onPageDataChanged(Page changedPage) {
ArrayList<ReviewItem> reviewItems = new ArrayList<ReviewItem>();
for (Page page : mWizardModel.getCurrentPageSequence()) {
page.getReviewItems(reviewItems);
}
Collections.sort(reviewItems, new Comparator<ReviewItem>() {
@Override
public int compare(ReviewItem a, ReviewItem b) {
return a.getWeight() > b.getWeight() ? +1 : a.getWeight() < b.getWeight() ? -1 : 0;
}
});
mCurrentReviewItems = reviewItems;
if (mReviewAdapter != null) {
mReviewAdapter.notifyDataSetInvalidated();
}
}
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
mCallbacks.onEditScreenAfterReview(mCurrentReviewItems.get(position).getPageKey());
}
public List<ReviewItem> getReviewItems(){
return mCurrentReviewItems;
}
public interface Callbacks {
AbstractWizardModel onGetModel();
void onEditScreenAfterReview(String pageKey);
}
private class ReviewAdapter extends BaseAdapter {
@Override
public boolean hasStableIds() {
return true;
}
@Override
public int getItemViewType(int position) {
return 0;
}
@Override
public int getViewTypeCount() {
return 1;
}
@Override
public boolean areAllItemsEnabled() {
return true;
}
@Override
public Object getItem(int position) {
return mCurrentReviewItems.get(position);
}
@Override
public long getItemId(int position) {
return mCurrentReviewItems.get(position).hashCode();
}
@Override
public View getView(int position, View view, ViewGroup container) {
LayoutInflater inflater = LayoutInflater.from(getActivity());
View rootView = inflater.inflate(R.layout.list_item_review, container, false);
ReviewItem reviewItem = mCurrentReviewItems.get(position);
String value = reviewItem.getDisplayValue();
if (TextUtils.isEmpty(value)) {
value = "(None)" ;
}
((TextView) rootView.findViewById(android.R.id.text1)).setText(reviewItem.getTitle());
((TextView) rootView.findViewById(android.R.id.text2)).setText(value);
return rootView;
}
@Override
public int getCount() {
return mCurrentReviewItems.size();
}
}
}
Java Source Code List android.UnusedStub.java com.android.capstone.BaseActivity.java com.android.capstone.DatePickerFragment.java com.android.capstone.MainActivity.java com.android.capstone.RegisterFragment.java com.android.capstone.data.CheckinSvcApi.java com.android.capstone.data.Checkin.java com.android.capstone.data.Doctor.java com.android.capstone.data.GPlusProfile.java com.android.capstone.data.MedicationCheckinQA.java com.android.capstone.data.Medications.java com.android.capstone.data.Patient.java com.android.capstone.data.VDoctor.java com.android.capstone.data.VPatient.java com.android.capstone.db.SymptomManagementContract.java com.android.capstone.db.SymptomManagementDbHelper.java com.android.capstone.db.SymptomManagementProvider.java com.android.capstone.doctor.CheckinLogsListAdapter.java com.android.capstone.doctor.CheckinLogs_Doctor_Fragment.java com.android.capstone.doctor.DisplayCheckinActivity.java com.android.capstone.doctor.DoctorMain_Fragment.java com.android.capstone.doctor.Doctor_Main_CursorAdapter.java com.android.capstone.doctor.Doctor_VPatient_Activity.java com.android.capstone.doctor.Doctor_VPatient_Fragment.java com.android.capstone.doctor.MedicationsListAdapter.java com.android.capstone.doctor.MedicationsListFragment.java com.android.capstone.doctor.alarm.CheckPainIntentService.java com.android.capstone.doctor.alarm.CheckPain.java com.android.capstone.doctor.alarm.CheckinAlarmService.java com.android.capstone.doctor.alarm.OnBootReceiver.java com.android.capstone.gcm.GcmBroadcastReceiver.java com.android.capstone.gcm.GcmIntentService.java com.android.capstone.patient.CheckinNowActivity.java com.android.capstone.patient.PatientMain_Fragment.java com.android.capstone.patient.Patient_Main_CursorAdapter.java com.android.capstone.patient.ReminderCursorAdapter.java com.android.capstone.patient.RemindersActivity.java com.android.capstone.patient.TimePickerFragment.java com.android.capstone.patient.checkin_now.model.AbstractWizardModel.java com.android.capstone.patient.checkin_now.model.BranchPage.java com.android.capstone.patient.checkin_now.model.CheckinNow_Model.java com.android.capstone.patient.checkin_now.model.ModelCallbacks.java com.android.capstone.patient.checkin_now.model.MultipleFixedChoicePage.java com.android.capstone.patient.checkin_now.model.PageList.java com.android.capstone.patient.checkin_now.model.PageTreeNode.java com.android.capstone.patient.checkin_now.model.Page.java com.android.capstone.patient.checkin_now.model.ReviewItem.java com.android.capstone.patient.checkin_now.model.SingleFixedChoicePage.java com.android.capstone.patient.checkin_now.ui.MultipleChoiceFragment.java com.android.capstone.patient.checkin_now.ui.PageFragmentCallbacks.java com.android.capstone.patient.checkin_now.ui.ReviewFragment.java com.android.capstone.patient.checkin_now.ui.SingleChoiceFragment.java com.android.capstone.patient.checkin_now.ui.StepPagerStrip.java com.android.capstone.task.AddCheckinTask.java com.android.capstone.task.AddMedicationsTask.java com.android.capstone.task.AddPatientTask.java com.android.capstone.task.GetClientCategoryTask.java com.android.capstone.task.GetClientInfoTask.java com.android.capstone.task.GetUserImageTask.java com.android.capstone.task.RegisterDoctorTask.java com.android.capstone.task.RegisterPatientTask.java com.android.capstone.utils.CommonUtils.java com.android.capstone.utils.RetrofitUtils.java com.android.capstone.utils.SharedPrefUtils.java com.android.capstone.views.CheckinLogsView.java com.android.capstone.views.FloatingActionButton.java com.coursera.capstone.checkin.Application.java com.coursera.capstone.checkin.client.CheckinSvcApi.java com.coursera.capstone.checkin.client.TokenSvcApi.java com.coursera.capstone.checkin.controller.CheckinSvc.java com.coursera.capstone.data.CheckinUtils.java com.coursera.capstone.data.Checkin.java com.coursera.capstone.data.ClientUtils.java com.coursera.capstone.data.Constants.java com.coursera.capstone.data.DoctorUtils.java com.coursera.capstone.data.Doctor.java com.coursera.capstone.data.InvalidRequestException.java com.coursera.capstone.data.Medications.java com.coursera.capstone.data.Message.java com.coursera.capstone.data.MulticastResult.java com.coursera.capstone.data.PMF.java com.coursera.capstone.data.PatientUtils.java com.coursera.capstone.data.Patient.java com.coursera.capstone.data.Result.java com.coursera.capstone.data.Sender.java com.coursera.capstone.data.Token.java com.coursera.capstone.data.VDoctor.java com.coursera.capstone.data.VPatient.java com.coursera.capstone.interceptor.AuthorizationInterceptor.java com.coursera.capstone.interceptor.Checker.java