package com.pinthecloud.athere.dialog; import android.graphics.Bitmap; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.RelativeLayout; import android.widget.TextView; import com.pinthecloud.athere.AhApplication; import com.pinthecloud.athere.AhGlobalVariable; import com.pinthecloud.athere.R; import com.pinthecloud.athere.fragment.AhFragment; import com.pinthecloud.athere.helper.BlobStorageHelper; import com.pinthecloud.athere.helper.CachedBlobStorageHelper; import com.pinthecloud.athere.helper.UserHelper; import com.pinthecloud.athere.interfaces.AhDialogCallback; import com.pinthecloud.athere.model.AhUser; import com.pinthecloud.athere.util.FileUtil; public class ProfileDialog extends AhDialogFragment{ private AhFragment frag; private AhUser user; private AhDialogCallback ahDialogCallback; private ImageView profileImage; private TextView nickNameText; private TextView ageGenderText; private RelativeLayout sendChupaLayout; private UserHelper userHelper; private CachedBlobStorageHelper blobStorageHelper; public ProfileDialog(AhFragment frag, AhUser user, AhDialogCallback ahDialogCallback) { super(); this.frag = frag; this.user = user; this.ahDialogCallback = ahDialogCallback; AhApplication app = AhApplication.getInstance(); this.userHelper = app.getUserHelper(); this.blobStorageHelper = app.getBlobStorageHelper(); setStyle(STYLE_NO_TITLE, 0); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.dialog_profile, container, false); findComponent(view); setComponent(); setClickEvent(); return view; } @Override public void onStart() { super.onStart(); Bitmap placeHolder = FileUtil.getBitmapFromInternalStorage(context, user.getId()+AhGlobalVariable.SMALL); blobStorageHelper.setImageViewAsync(frag, BlobStorageHelper.USER_PROFILE, user.getId(), placeHolder, profileImage, true); } @Override public void onStop() { profileImage.setImageBitmap(null); super.onStop(); } private void findComponent(View view){ profileImage = (ImageView) view.findViewById(R.id.profile_dialog_profile_image); nickNameText = (TextView) view.findViewById(R.id.profile_dialog_nick_name); ageGenderText = (TextView) view.findViewById(R.id.profile_dialog_age_gender); sendChupaLayout = (RelativeLayout) view.findViewById(R.id.profile_dialog_send_chupa_layout); } private void setComponent(){ nickNameText.setText(user.getNickName()); ageGenderText.setText("" + user.getAge()); if(user.isMale()){ ageGenderText.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.general_gender_m, 0); }else{ ageGenderText.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.general_gender_w, 0); } if(userHelper.isMyUser(user)){ sendChupaLayout.setVisibility(View.GONE); } } private void setClickEvent(){ sendChupaLayout.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { ahDialogCallback.doPositiveThing(null); dismiss(); } }); profileImage.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { ahDialogCallback.doNegativeThing(null); } }); } }