package com.hdweiss.morgand.gui.edit;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.DatePicker;
import android.widget.TimePicker;
import com.hdweiss.morgand.R;
import com.hdweiss.morgand.data.dao.OrgNode;
import java.util.Calendar;
public class EditDateFragment extends BaseEditFragment {
private DatePicker datePicker;
private CheckBox timeStartCheckbox;
private TimePicker timeStartPicker;
private CheckBox timeEndCheckbox;
private TimePicker timeEndPicker;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.edit_date_fragment, container, false);
datePicker = (DatePicker) view.findViewById(R.id.date);
datePicker.setCalendarViewShown(false);
datePicker.setSpinnersShown(true);
timeStartPicker = (TimePicker) view.findViewById(R.id.time_start);
timeStartPicker.setIs24HourView(true);
timeStartCheckbox = (CheckBox) view.findViewById(R.id.time_start_check);
timeEndPicker = (TimePicker) view.findViewById(R.id.time_end);
timeEndPicker.setIs24HourView(true);
timeEndCheckbox = (CheckBox) view.findViewById(R.id.time_end_check);
timeStartCheckbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
if (checked) {
timeStartPicker.setVisibility(View.VISIBLE);
timeEndCheckbox.setEnabled(true);
}
else {
timeStartPicker.setVisibility(View.INVISIBLE);
timeEndCheckbox.setChecked(false);
timeEndCheckbox.setEnabled(false);
}
}
});
timeEndCheckbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
if (checked)
timeEndPicker.setVisibility(View.VISIBLE);
else
timeEndPicker.setVisibility(View.INVISIBLE);
}
});
return view;
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
// OrgNodeTimeDate timeDate = null; // TODO Complete
controller.getNode().getTitle();
// if (timeDate != null)
// type = timeDate.type;
// else
// type = OrgNodeTimeDate.TYPE.Scheduled;
// getDialog().setTitle(getResources().getString(R.string.action_set_time) + " - " + type.toString());
// if (timeDate != null)
// populateView(timeDate);
// else
// populateView();
}
private void populateView() {
Calendar c = Calendar.getInstance();
datePicker.updateDate(c.get(Calendar.YEAR) - 1, c.get(Calendar.MONTH) - 1, c.get(Calendar.DAY_OF_MONTH) - 1);
timeStartCheckbox.setChecked(false);
timeStartPicker.setVisibility(View.INVISIBLE);
timeEndCheckbox.setChecked(false);
timeEndCheckbox.setEnabled(false);
timeEndPicker.setVisibility(View.INVISIBLE);
}
// private void populateView(OrgNodeTimeDate timeDate) {
// if (timeDate.year >= 0 && timeDate.monthOfYear >= 0 && timeDate.dayOfMonth >= 0)
// datePicker.updateDate(timeDate.year - 1, timeDate.monthOfYear - 1, timeDate.dayOfMonth - 1);
//
// if (timeDate.startTimeOfDay >= 0 && timeDate.startMinute >= 0) {
// timeStartPicker.setCurrentHour(timeDate.startTimeOfDay);
// timeStartPicker.setCurrentMinute(timeDate.startMinute);
// timeStartCheckbox.setChecked(true);
// } else
// timeStartCheckbox.setChecked(false);
//
// if (timeDate.endTimeOfDay >= 0 && timeDate.endMinute >= 0) {
// timeEndPicker.setCurrentHour(timeDate.endTimeOfDay);
// timeEndPicker.setCurrentMinute(timeDate.endMinute);
// timeEndCheckbox.setChecked(true);
// } else
// timeEndCheckbox.setChecked(false);
// }
//
//
// private OrgNodeTimeDate getTimeDate() {
// OrgNodeTimeDate resultTimeDate = new OrgNodeTimeDate(type);
//
// resultTimeDate.year = datePicker.getYear() + 1;
// resultTimeDate.monthOfYear = datePicker.getMonth() + 1;
// resultTimeDate.dayOfMonth = datePicker.getDayOfMonth() + 1;
//
// if (timeStartCheckbox.isChecked()) {
// resultTimeDate.startTimeOfDay = timeStartPicker.getCurrentHour();
// resultTimeDate.startMinute = timeStartPicker.getCurrentMinute();
//
// if (timeEndCheckbox.isChecked()) {
// resultTimeDate.endTimeOfDay = timeEndPicker.getCurrentHour();
// resultTimeDate.endMinute = timeEndPicker.getCurrentMinute();
// }
// }
//
// return resultTimeDate;
// }
@Override
public OrgNode getEditedNode() {
return controller.getNode();
}
}