private Boolean DrawAddAlarm(KSPDateTime AlarmDate, KSPTimeSpan TimeToEvent, KSPTimeSpan TimeToAlarm, Boolean ForceShowRepeat = false) { Boolean blnReturn = false; intHeight_AddWindowRepeat = 0; int intLineHeight = 18; GUILayout.BeginVertical(); //Do we show repeating options if (KACAlarm.AlarmTypeSupportsRepeat.Contains(AddType) || ForceShowRepeat) { intHeight_AddWindowRepeat += 53; GUILayout.Label("Alarm Repeat Options...", KACResources.styleAddSectionHeading); GUILayout.BeginVertical(KACResources.styleAddFieldAreas); DrawCheckbox(ref blnRepeatingAlarmFlag, new GUIContent("Make this alarm repeat when triggered", "If enabled then when one alarm fires another will be created based on the existing alarm")); if (KACAlarm.AlarmTypeSupportsRepeatPeriod.Contains(AddType)) { intHeight_AddWindowRepeat += 24; DrawTimeEntry(ref timeRepeatPeriod, KACTimeStringArray.TimeEntryPrecisionEnum.Days, "Repeat After:", 90); } GUILayout.EndVertical(); } //Now for the add area GUILayout.BeginHorizontal(KACResources.styleAddAlarmArea); GUILayout.BeginVertical(); GUILayout.BeginHorizontal(); GUILayout.Label("Date:", KACResources.styleAddHeading, GUILayout.Height(intLineHeight), GUILayout.Width(40), GUILayout.MaxWidth(40)); GUILayout.Label(AlarmDate.ToStringStandard(DateStringFormatsEnum.DateTimeFormat), KACResources.styleContent, GUILayout.Height(intLineHeight)); GUILayout.EndHorizontal(); if (TimeToEvent != null) { GUILayout.BeginHorizontal(); //GUILayout.Label("Time to " + strAlarmEventName + ":", KACResources.styleAddHeading, GUILayout.Height(intLineHeight), GUILayout.Width(120), GUILayout.MaxWidth(120)); GUILayout.Label("Time to " + strAlarmEventName + ":", KACResources.styleAddHeading, GUILayout.Height(intLineHeight)); GUILayout.Label(TimeToEvent.ToStringStandard(settings.TimeSpanFormat), KACResources.styleContent, GUILayout.Height(intLineHeight)); GUILayout.EndHorizontal(); } GUILayout.BeginHorizontal(); //GUILayout.Label("Time to Alarm:", KACResources.styleAddHeading, GUILayout.Height(intLineHeight), GUILayout.Width(120), GUILayout.MaxWidth(120)); GUILayout.Label("Time to Alarm:", KACResources.styleAddHeading, GUILayout.Height(intLineHeight)); GUILayout.Label(TimeToAlarm.ToStringStandard(settings.TimeSpanFormat), KACResources.styleContent, GUILayout.Height(intLineHeight)); GUILayout.EndHorizontal(); GUILayout.EndVertical(); GUILayout.Space(10); int intButtonHeight = 36; if (TimeToEvent != null) intButtonHeight += 22; if (GUILayout.Button("Add Alarm", KACResources.styleButton, GUILayout.Width(75), GUILayout.Height(intButtonHeight))) { blnReturn = true; } GUILayout.EndHorizontal(); GUILayout.EndVertical(); return blnReturn; }