@Override protected void restoreStateFromFreeze() { edSubject.setText(freeze.getString("subject")); chkAlarm.setChecked(freeze.getBoolean("alarm")); dateStart.setTimeInMillis(freeze.getLong("dateStart")); chkAllDay.setChecked(false); iRepeatType = freeze.getInt("repeatType"); iRepeatEvery = freeze.getInt("repeatEvery"); dateEndOn.setTimeInMillis(freeze.getLong("dateEndOn")); }
private void InitState() { // title String sSubTitle = utils.GetResStr(R.string.titleDefaultCourse); // date values dateStart = Calendar.getInstance(); dateEndOn = Calendar.getInstance(); dataRow.SetDuration(prefs.iMinutesDuration); // INSERT MODE if (GetStartMode() == StartMode.NEW) { sSubTitle = utils.GetResStr(R.string.titleNewCourse); btnDelete.setVisibility(View.INVISIBLE); // initialize data SetStartDateByAgendaView(dateStart); updateStartDateTimeForNewCourse(dateStart); SetStartTimeForDayAgendaView(dateStart); chkAllDay.setChecked(false); // repeat data iRepeatType = 0; // none iRepeatEvery = 1; dateEndOn.setTimeInMillis(0); // no end date } // EDIT MODE if (GetStartMode() == StartMode.EDIT) { sSubTitle = utils.GetResStr(R.string.titleEditCourse); dateStart.setTimeInMillis(dataRow.GetStartDate().getTimeInMillis()); btnDelete.setVisibility(View.VISIBLE); edSubject.setText(dataRow.GetSubject()); // repeat data iRepeatType = dataRow.GetRepeat().GetRepeatTypeAsInt(); iRepeatEvery = dataRow.GetRepeat().GetEvery(); dateEndOn.setTimeInMillis(dataRow.GetRepeat().GetEndOnDate().getTimeInMillis()); } restoreStateFromFreezeIfRequired(); SetActivityTitle(sSubTitle); UpdateStartDateTimeView(); UpdateRepeatInfo(); // set focus to subject edSubject.requestFocus(); if (GetStartMode() == StartMode.EDIT) edSubject.setSelection(edSubject.length()); }
@Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); // save controls state outState.putString("subject", edSubject.getText().toString()); outState.putBoolean("alarm", false); outState.putLong("dateStart", dateStart.getTimeInMillis()); outState.putBoolean("allday", chkAllDay.isChecked()); outState.putInt("repeatType", iRepeatType); outState.putInt("repeatEvery", iRepeatEvery); outState.putLong("dateEndOn", dateEndOn.getTimeInMillis()); }
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); Bundle extras = CommonActivity.getIntentExtras(data); if (extras != null) { // check for date widget edit request code if (requestCode == DateWidget.SELECT_DATE_REQUEST) { final long lDate = DateWidget.GetSelectedDateOnActivityResult(requestCode, resultCode, extras, dateStart); if (lDate != -1) { UpdateStartDateTimeView(); return; } } // check for time widget edit request code if ((requestCode == TimeWidget.SELECT_TIME_REQUEST) && (resultCode == RESULT_OK)) { final int iHour = TimeWidget.GetSelectedTimeHourOnActivityResult(requestCode, resultCode, extras); final int iMinute = TimeWidget.GetSelectedTimeMinuteOnActivityResult(requestCode, resultCode, extras); dateStart.set(Calendar.HOUR_OF_DAY, iHour); dateStart.set(Calendar.MINUTE, iMinute); chkAllDay.setChecked(false); UpdateStartDateTimeView(); return; } // get KeyboardWidget result if ((requestCode == KeyboardWidget.EDIT_TEXT_REQUEST) && (resultCode == RESULT_OK)) { String sText = KeyboardWidget.GetTextOnActivityResult(requestCode, resultCode, extras); edSubject.setText(sText); return; } } }