[kde-edu]: kdeedu/libkdeedu [POSSIBLY UNSAFE]

Jason Harris kstars at 30doradus.org
Sun Apr 18 09:58:45 CEST 2004


CVS commit by harris: 

Adding ExtDate library to libkdeedu.  ExtDate is a replacement for 
QDate that eliminates its arbitrary date-range limits (QDate cannot 
accept dates prior to year 1752 or after year 8000).  There is no 
theoretical limit to the range of dates that ExtDate can accept, but 
I have imposed a range of -50000 to +50000 for now.

The ExtDate library is based on the initial work of Michel Guitel, who
wrote the original ExtDate class.  I have added the following classes:

ExtDateTime (replaces QDateTime)
ExtCalendarSystem (replaces KCalendarSystem)
ExtCalendarSystemGregorian (replaces KCalendarSystemGregorian)
ExtDateTable (replaces KDateTable)
ExtDatePicker (replaces KDatePicker)
ExtDateTimeEdit (replaces QDateTimeEdit)
ExtDateWidget (replaces KDateWidget)

Most of the work was simply pasting in the class to be replaced, and 
global-replacing QDate with ExtDate.  However, there are some 
remaining issues:

+ currently, only the Gregorian calendar is supported
+ using KLocale to set the date string format does not work 
+ API docs are needed

Once the issues have been worked out, I would like to propose to 
kde-core-devel that these classes be added to kdelibs for KDE4.  
However, I am not sure if any other apps besides KStars really need 
very remote dates.  

The library includes two test-programs for verifying the performance 
of ExtDate.  The first (test_extdate) is a command-line program that 
simply outputs the results of 9 tests comparing the performance of 
ExtDate and QDate.  If ExtDate is working correctly, then the only 
differences will be for dates outside of QDate's valid range.  The 
second (test_extdatepicker) is a GUI app showing a KDatePicker and an 
ExtDatePicker side-by-side (there is a slight rendering difference 
between ExtDatePicker and KDatePicker on my system; I don't know 
why this is happening).

The other way to test it is to run kstars; I am going to commit the 
ExtDate code in kstars shortly...

CCMAIL: kde-edu at kde.org
CCMAIL: kstars-devel at kde.org
CCMAIL: michel.guitel at free.fr


  A            extdate/Makefile.am   1.1
  A            extdate/README   1.1
  A            extdate/extcalendarsystem.cpp   1.1 [LGPL (v2+)]
  A            extdate/extcalendarsystem.h   1.1 [LGPL (v2+)]
  A            extdate/extcalendarsystemgregorian.cpp   1.1 [LGPL (v2+)]
  A            extdate/extcalendarsystemgregorian.h   1.1 [LGPL (v2+)]
  A            extdate/extdatepicker.cpp   1.1 [LGPL (v2+)]
  A            extdate/extdatepicker.h   1.1 [LGPL (v2+)]
  A            extdate/extdatetbl.cpp   1.1 [LGPL (v2+)]
  A            extdate/extdatetbl.h   1.1 [LGPL (v2+)]
  A            extdate/extdatetime.cpp   1.1 [POSSIBLY UNSAFE: printf,qDebug] [no copyright]
  A            extdate/extdatetime.h   1.1 [no copyright]
  A            extdate/extdatetimeedit.cpp   1.1 [UNKNOWN]
  A            extdate/extdatetimeedit.h   1.1 [UNKNOWN]
  A            extdate/extdatewidget.cpp   1.1 [LGPL]
  A            extdate/extdatewidget.h   1.1 [LGPL]
  A            extdate/main.cpp   1.1 [no copyright]
  A            extdate/test_extdate.cc   1.1 [no copyright]
  A            extdate/testwidget.cpp   1.1 [no copyright]
  A            extdate/testwidget.h   1.1 [no copyright]
  M +1 -1      Makefile.am   1.8


--- kdeedu/libkdeedu/Makefile.am  #1.7:1.8
@@ -1 +1 @@
-SUBDIRS = kdeeducore kdeeduui kdeeduplot
+SUBDIRS = kdeeducore kdeeduui kdeeduplot extdate




More information about the kde-edu mailing list