package com.handsomezhou.futurerecenttimeselect.view;
import android.content.Context;
import android.util.AttributeSet;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;
import com.handsomezhou.futurerecenttimeselect.model.TimeItemIndex;
import com.handsomezhou.futurerecenttimeselect.view.FutureRecentTimeView.OnFutureRecentTimeView;
import com.handsomezhou.futurerecenttimeselectview.R;
public class FutureRecentTimeSelectView extends LinearLayout implements OnFutureRecentTimeView{
private static final String TAG="FutureRecentTimeSelectView";
private Context mContext;
private OnFutureRecentTimeSelectView mOnFutureRecentTimeSelectView;
private View mFutureRecentTimeSelectView;
/*Start: mFutureRecentTimeSelectView*/
private Button mOkBtn;
private Button mCancelBtn;
private FutureRecentTimeView mFutureRecentTimeView;
/*End: mFutureRecentTimeSelectView*/
public FutureRecentTimeSelectView(Context context, AttributeSet attrs) {
super(context, attrs);
mContext = context;
initData();
initView();
initListener();
}
public interface OnFutureRecentTimeSelectView{
void onFutureRecentTimeSelectViewCancel();
void onFutureRecentTimeSelectViewOk(TimeItemIndex timeItemIndex);
void onTimeChanged(TimeItemIndex timeItemIndex);
}
/*Start: OnFutureRecentTimeView*/
@Override
public void onTimeChanged(TimeItemIndex timeItemIndex) {
if(null!=mOnFutureRecentTimeSelectView){
mOnFutureRecentTimeSelectView.onTimeChanged(timeItemIndex);
}
}
/*End: OnFutureRecentTimeView*/
public OnFutureRecentTimeSelectView getOnFutureRecentTimeSelectView() {
return mOnFutureRecentTimeSelectView;
}
public void setOnFutureRecentTimeSelectView(OnFutureRecentTimeSelectView onFutureRecentTimeSelectView) {
this.mOnFutureRecentTimeSelectView = onFutureRecentTimeSelectView;
}
public void updateView(){
mFutureRecentTimeView.updateView();
return;
}
private void initData() {
return;
}
private void initView() {
LayoutInflater inflater=(LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mFutureRecentTimeSelectView = inflater.inflate(R.layout.future_recent_time_select_layout,this);
mFutureRecentTimeView=(FutureRecentTimeView) mFutureRecentTimeSelectView.findViewById(R.id.future_recent_time_view);
mFutureRecentTimeView.setOnFutureRecentTimeView(this);
mOkBtn=(Button) mFutureRecentTimeSelectView.findViewById(R.id.ok_btn);
mCancelBtn=(Button) mFutureRecentTimeSelectView.findViewById(R.id.cancel_btn);
return;
}
private void initListener() {
mOkBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickOk();
}
});
mCancelBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
clickCancel();
}
});
}
private void clickOk(){
if(null!=mOnFutureRecentTimeSelectView){
int dayItemIndex=mFutureRecentTimeView.getDayItemIndex();
int hourItemIndex=mFutureRecentTimeView.getHouItemIndex();
int minuteItemIndex=mFutureRecentTimeView.getMinuteItemIndex();
TimeItemIndex timeItemIndex=new TimeItemIndex(dayItemIndex, hourItemIndex, minuteItemIndex);
mOnFutureRecentTimeSelectView.onFutureRecentTimeSelectViewOk(timeItemIndex);
}
return;
}
private void clickCancel(){
if(null!=mOnFutureRecentTimeSelectView){
mOnFutureRecentTimeSelectView.onFutureRecentTimeSelectViewCancel();
}
return;
}
}