date_object.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _DATE_OBJECT_H_
00023 #define _DATE_OBJECT_H_
00024
00025 #include "internal.h"
00026 #include "function_object.h"
00027
00028 #include <sys/time.h>
00029
00030 namespace KJS {
00031
00032 class DateInstanceImp : public ObjectImp {
00033 public:
00034 DateInstanceImp(ObjectImp *proto);
00035
00036 virtual const ClassInfo *classInfo() const { return &info; }
00037 static const ClassInfo info;
00038 };
00039
00046 class DatePrototypeImp : public DateInstanceImp {
00047 public:
00048 DatePrototypeImp(ExecState *exec, ObjectPrototypeImp *objectProto);
00049 Value get(ExecState *exec, const Identifier &p) const;
00050 virtual const ClassInfo *classInfo() const { return &info; }
00051 static const ClassInfo info;
00052 };
00053
00060 class DateProtoFuncImp : public InternalFunctionImp {
00061 public:
00062 DateProtoFuncImp(ExecState *exec, int i, int len);
00063
00064 virtual bool implementsCall() const;
00065 virtual Value call(ExecState *exec, Object &thisObj, const List &args);
00066
00067
00068 Completion execute(const List &);
00069 enum { ToString, ToDateString, ToTimeString, ToLocaleString,
00070 ToLocaleDateString, ToLocaleTimeString, ValueOf, GetTime,
00071 GetFullYear, GetMonth, GetDate, GetDay, GetHours, GetMinutes,
00072 GetSeconds, GetMilliSeconds, GetTimezoneOffset, SetTime,
00073 SetMilliSeconds, SetSeconds, SetMinutes, SetHours, SetDate,
00074 SetMonth, SetFullYear, ToUTCString,
00075
00076 GetYear, SetYear, ToGMTString };
00077 private:
00078 int id;
00079 bool utc;
00080 };
00081
00087 class DateObjectImp : public InternalFunctionImp {
00088 public:
00089 DateObjectImp(ExecState *exec,
00090 FunctionPrototypeImp *funcProto,
00091 DatePrototypeImp *dateProto);
00092
00093 virtual bool implementsConstruct() const;
00094 virtual Object construct(ExecState *exec, const List &args);
00095 virtual bool implementsCall() const;
00096 virtual Value call(ExecState *exec, Object &thisObj, const List &args);
00097
00098 Completion execute(const List &);
00099 Object construct(const List &);
00100 };
00101
00108 class DateObjectFuncImp : public InternalFunctionImp {
00109 public:
00110 DateObjectFuncImp(ExecState *exec, FunctionPrototypeImp *funcProto,
00111 int i, int len);
00112
00113 virtual bool implementsCall() const;
00114 virtual Value call(ExecState *exec, Object &thisObj, const List &args);
00115
00116 enum { Parse, UTC };
00117 private:
00118 int id;
00119 };
00120
00121
00122 Value parseDate(const UString &u);
00123 double KRFCDate_parseDate(const UString &_date);
00124 Value timeClip(const Value &t);
00125 int local_timeoffset();
00126
00127 }
00128
00129 #endif
This file is part of the documentation for kjs Library Version 3.2.2.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Apr 21 18:43:30 2004 by
doxygen 1.3.6-20040222 written by
Dimitri van Heesch, © 1997-2003