void debug_menu::time_menu() /* Not really a menu! */ { style::basic_progress* win; style::winconf_t MyConf; MyConf.height = 11; MyConf.width = (maxx - 20); MyConf.starty = (maxy - MyConf.height) / 2; MyConf.startx = (maxx - MyConf.width) / 2; /* Preparing time stuff */ time_t MyTime = time(NULL); /* ctime() requires time_t* */ string currentTime = ctime(&MyTime); currentTime.pop_back(); int currentUDT = GetDayTime(); win = new style::basic_progress(MyConf, currentUDT, 86400); win->set_title("Time Menu"); win->set_message("Current Time: " + currentTime + "\n" + "Current UDT : " + to_string(currentUDT) + "\n"); menu_stack->map(win); getch(); /* Press any key to continue... */ menu_stack->unmap(); delete win; win = 0; return; }
extern DialoG CreateCalendarDateDialog ( GrouP prnt, Pointer userdata, DialogActnFunc actproc ) { CalendarDate cd; DatePagePtr dpp; DayTime dt; GrouP f; GrouP p; p = HiddenGroup (prnt, 1, 0, NULL); dpp = (DatePagePtr) MemNew (sizeof (DatePage)); if (dpp) { SetObjectExtra (p, dpp, StdCleanupExtraProc); dpp->dialog = (DialoG) p; dpp->todialog = CalendarDatePtrToDatePage; dpp->fromdialog = DatePageToCalendarDatePtr; dpp->testdialog = NULL; dpp->actproc = actproc; dpp->userdata = userdata; f = HiddenGroup (p, -6, 0, NULL); dpp->month = PopupList (f, TRUE, ChangeDateProc); SetObjectExtra (dpp->month, (Pointer) dpp, NULL); InitEnumPopup (dpp->month, months_alist, NULL); SetValue (dpp->month, 1); dpp->day = PopupList (f, TRUE, ChangeDateProc); SetObjectExtra (dpp->day, (Pointer) dpp, NULL); InitEnumPopup (dpp->day, days_alist, NULL); SetValue (dpp->day, 1); StaticPrompt (f, ",", 0, popupMenuHeight, programFont, 'l'); dpp->year = PopupList (f, TRUE, ChangeDateProc); SetObjectExtra (dpp->year, (Pointer) dpp, NULL); InitEnumPopup (dpp->year, years_alist, NULL); SetValue (dpp->year, 1); if (GetDayTime (&dt)) { cd.month = dt.tm_mon + 1; cd.day = dt.tm_mday; cd.year = dt.tm_year + 1900; CalendarDatePtrToDatePage ((DialoG) p, (Pointer) &cd); } } return (DialoG) p; }
/// \brief /// Modifies the current time of day. /// /// \param fTimeDiff /// Time difference to apply (-1..+1, mapped to -24h..+24h). /// EFFECTS_IMPEXP virtual void IncDayTime(float fTimeDiff) { bool bIsDay = IsDay(); SetDayTime(GetDayTime() + fTimeDiff); m_bDayNightSwitch = (bIsDay != IsDay()); }