Skip to content
A VFP set of classes to hold calendrical information, and perform simple calculations.
xBase
Branch: master
Clone or download
Latest commit c455820 Jan 30, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples New SetCalendars() method. Sep 17, 2018
.gitignore First commit of the DatePicker Visual Library. Sep 14, 2018
DOCUMENTATION.md More robust time initial selection. Sep 15, 2018
README.md Added IndexedString() method, to facilitate localization. Sep 18, 2018
UNLICENSE.md Added documentation. May 10, 2017
austrian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
british-calendar.prg LOCFILE() removed from dependencies calls to facilitate the inclusion… Jan 6, 2019
bulgarian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
business-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
calendar.prg SeWeekday() accepts negative ordinal values, meaning -1 = last, -2 = … Jan 30, 2019
christian-julian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
classes.md More robust time initial selection. Sep 15, 2018
danish-calendar.prg LOCFILE() removed from dependencies calls to facilitate the inclusion… Jan 6, 2019
datepicker.md New SetCalendars() method. Sep 17, 2018
datepicker.vc2 Added IndexedString() method, to facilitate localization. Sep 18, 2018
datepicker.vct Added IndexedString() method, to facilitate localization. Sep 18, 2018
datepicker.vcx Added IndexedString() method, to facilitate localization. Sep 18, 2018
datepicker.zip Added IndexedString() method, to facilitate localization. Sep 18, 2018
dutch-calendar-events.prg LOCFILE() restored for the IDE. Jan 15, 2019
examples.md More robust time initial selection. Sep 15, 2018
french-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
german-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
greek-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
gregorian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
hebrew-calendar-events.prg LOCFILE() restored for the IDE. Jan 15, 2019
hebrew-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
hebrew.xml New methods MonthsAdd and YearsAdd. Sep 14, 2018
hebrew_events.xml Support for Calendar Events, including new base classes: CalendarEven… Nov 1, 2017
hungarian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
islamic-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
islamic.xml New methods MonthsAdd and YearsAdd. Sep 14, 2018
japanese-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
julian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
julian.xml LOCFILE() removed from dependencies calls to facilitate the inclusion… Jan 6, 2019
nl_events.xml Added <interval>, <weekday>, and <move> elements in XML Calendar Even… Nov 2, 2017
pascha-calendar-events.prg LOCFILE() restored for the IDE. Jan 15, 2019
pem.md More robust time initial selection. Sep 15, 2018
persian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
persian.xml New methods MonthsAdd and YearsAdd. Sep 14, 2018
portuguese-calendar-events.prg LOCFILE() restored for the IDE. Jan 15, 2019
pt_events.xml
republican-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
republican.xml Class for the French Republican calendar (historical). Apr 25, 2017
romanian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
russian-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
solar-calendar-events.prg LOCFILE() restored for the IDE. Jan 15, 2019
turkish-calendar.prg LOCFILE() restored for the IDE. Jan 15, 2019
ui-1.png DatePicker documentation revision. Sep 15, 2018
us-calendar-events.prg LOCFILE() restored for the IDE. Jan 15, 2019
us_events.xml New methods MonthsAdd and YearsAdd. Sep 14, 2018

README.md

CalendarCalc

A VFP set of classes to hold calendrical information, and perform simple calculations.

Overview

  • Use these classes to represent a day in different calendar systems, or to switch between different calendars, or to extend the time coverage or precision of VFP's Date data type, or to perform basic calendrical calculations, or to check for calendar events...
  • Use the DatePicker visual library to easily pick dates and datetimes, and insert the picked value into a target textbox.
  • The calculations are, for the most part, based on Kees Couprie's Calendar Math website, and on Calendar.c, a C++ transcript from the original LISP code used for "Calendrical Calculations" by Nachum Dershowitz and Edward M. Reingold.

Using

  • See UNLICENSE. Icons in the DatePicker Visual Library, by Icons8, are licensed under an Attribution-NoDerivs 3.0 Unported (CC BY-ND 3.0) license by their authors.
  • In a project, include Calendar.prg (the base class) and any other specific classes that an application may require (for instance, gregorian-calendar.prg, hebrew-calendar.prg).
  • To make available a class definition, DO its program (for instance, DO persian-calendar.prg)
  • Create an object, and use it (see DOCUMENTATION for more info).

Credits

  • DatePicker icons by Icons8, creators of tech iconography extraordinaire.

Contributing

  • Test, use, fork, improve.
  • Review, suggest, and comment.

To-Do

  • More calendars...
  • A DatePicker visual library that supports the CalendarCalc classes is being tested...
  • iCalendar interface (see iCal4VFP project)...

Talk, talk, talk...

You can’t perform that action at this time.