private void triggerChange() {
        //GUI: make it visible
        this.dateButton.setText(dateUnset[0] ? LocalizationUtils.getString(R.string.datetime_nodateset_display) : Formatter.formatShortDateVerbally(this.date.getTime().getTime()));
        if (this.timeButton != null) {
            this.timeButton.setText(dateUnset[0] ? LocalizationUtils.getString(R.string.datetime_nodateset_display) : Formatter.formatTime(this.date.getTime().getTime()));
        }
        if (this.resetButton != null) {
            this.resetButton.setVisibility(dateUnset[0] ? View.INVISIBLE : View.VISIBLE);
        }

        //call listener if any
        if (this.changeListener != null) {
            this.changeListener.call(dateUnset[0] ? null : this.date.getTime());
        }
    }
If currently there is no date/time set, then this method sets the preselected date for later calls.
If a date is selected, this method does nothing
main/src/main/java/cgeo/geocaching/ui/DateTimeEditor.java