package com.wind.gifassistant.ui;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.TextView;
import com.wind.gifassistant.R;
import com.wind.gifassistant.ui.textpicker.TextPicker;
import com.wind.gifassistant.utils.AppUtils;
/**
* Created by djia on 15-4-21.
*/
public class RangSettingDialog extends Dialog implements DialogInterface.OnDismissListener {
private String mTitleStr;
private TextView mTitleView;
private String mTipsStr;
private TextView mTipsView;
private String mUnitStr;
private TextView mUnitTextView;
private TextPicker mPicker;
private Context mContext;
private RangSettingListener listener;
public RangSettingDialog(Context context) {
this(context, R.style.popup_dialog);
}
private RangSettingDialog(Context context, int theme) {
super(context, theme);
mContext = context;
setOnDismissListener(this);
}
public void setDialogTitle(String title) {
mTitleStr = title;
}
public void setDialogTitle(int titleResId) {
mTitleStr = mContext.getResources().getString(titleResId);
}
public void setUnitText(String unit) {
mUnitStr = unit;
}
public void setUnitText(int unitResId) {
mUnitStr = mContext.getResources().getString(unitResId);
}
public void setTips(String tips) {
mTipsStr = tips;
}
public void setTips(int tipsResId) {
mTipsStr = mContext.getResources().getString(tipsResId);
}
public void setRangListener(RangSettingListener l) {
listener = l;
}
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.rang_setting_dialog);
mTitleView = (TextView) findViewById(R.id.title);
mTitleView.setText(mTitleStr);
mTipsView = (TextView) findViewById(R.id.tips);
mTipsView.setText(mTipsStr);
mTipsView.setSelected(true);
mUnitTextView = (TextView) findViewById(R.id.unit);
mUnitTextView.setText(mUnitStr);
mPicker = (TextPicker) findViewById(R.id.numberPicker);
RangValues rangValues = null;
if (listener != null) {
rangValues = listener.getCurrentRang();
}
int max = rangValues!=null ? rangValues.max : AppUtils.DEFAULT_RATE_MAX_VALUE;
int min = rangValues!=null ? rangValues.min : AppUtils.DEFAULT_RATE_MIN_VALUE;
int current = rangValues!=null ? rangValues.current : AppUtils.DEFAULT_RATE_VALUE;
mPicker.setMaxValue(max);
mPicker.setMinValue(min);
mPicker.setValue(current);
mPicker.setFocusable(true);
mPicker.setFocusableInTouchMode(true);
}
@Override
public void onDismiss(DialogInterface dialogInterface) {
if (mPicker != null) {
if (listener != null) {
int current = mPicker.getValue();
listener.commitRangSetting(current);
}
}
}
}