⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qscriptecmadate.cpp

📁 奇趣公司比较新的qt/emd版本
💻 CPP
📖 第 1 页 / 共 4 页
字号:
    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        if (! qIsNaN(t))            t = msFromTime(t);        return QScriptValueImpl(eng, t);    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.getUTCMilliseconds"));}QScriptValueImpl Date::method_getTimezoneOffset(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        if (! qIsNaN(t))            t = (t - LocalTime(t)) / msPerMinute;        return QScriptValueImpl(eng, t);    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.getTimezoneOffset"));}QScriptValueImpl Date::method_setTime(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = TimeClip(context->argument(0).toNumber());        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setTime"));}QScriptValueImpl Date::method_setMilliseconds(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal ms = context->argument(0).toNumber();        t = TimeClip(UTC(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), SecFromTime(t), ms))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setMilliseconds"));}QScriptValueImpl Date::method_setUTCMilliseconds(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal ms = context->argument(0).toNumber();        t = TimeClip(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), SecFromTime(t), ms)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCMilliseconds"));}QScriptValueImpl Date::method_setSeconds(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal sec = context->argument(0).toNumber();        qsreal ms = (context->argumentCount() < 2) ? msFromTime(t) : context->argument(1).toNumber();        t = TimeClip(UTC(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), sec, ms))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setSeconds"));}QScriptValueImpl Date::method_setUTCSeconds(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal sec = context->argument(0).toNumber();        qsreal ms = (context->argumentCount() < 2) ? msFromTime(t) : context->argument(1).toNumber();        t = TimeClip(MakeDate(Day(t), MakeTime(HourFromTime(t), MinFromTime(t), sec, ms)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCSeconds"));}QScriptValueImpl Date::method_setMinutes(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal min = context->argument(0).toNumber();        qsreal sec = (context->argumentCount() < 2) ? SecFromTime(t) : context->argument(1).toNumber();        qsreal ms = (context->argumentCount() < 3) ? msFromTime(t) : context->argument(2).toNumber();        t = TimeClip(UTC(MakeDate(Day(t), MakeTime(HourFromTime(t), min, sec, ms))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setMinutes"));}QScriptValueImpl Date::method_setUTCMinutes(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal min = context->argument(0).toNumber();        qsreal sec = (context->argumentCount() < 2) ? SecFromTime(t) : context->argument(1).toNumber();        qsreal ms = (context->argumentCount() < 3) ? msFromTime(t) : context->argument(2).toNumber();        t = TimeClip(MakeDate(Day(t), MakeTime(HourFromTime(t), min, sec, ms)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCMinutes"));}QScriptValueImpl Date::method_setHours(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal hour = context->argument(0).toNumber();        qsreal min = (context->argumentCount() < 2) ? MinFromTime(t) : context->argument(1).toNumber();        qsreal sec = (context->argumentCount() < 3) ? SecFromTime(t) : context->argument(2).toNumber();        qsreal ms = (context->argumentCount() < 4) ? msFromTime(t) : context->argument(3).toNumber();        t = TimeClip(UTC(MakeDate(Day(t), MakeTime(hour, min, sec, ms))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setHours"));}QScriptValueImpl Date::method_setUTCHours(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal hour = context->argument(0).toNumber();        qsreal min = (context->argumentCount() < 2) ? MinFromTime(t) : context->argument(1).toNumber();        qsreal sec = (context->argumentCount() < 3) ? SecFromTime(t) : context->argument(2).toNumber();        qsreal ms = (context->argumentCount() < 4) ? msFromTime(t) : context->argument(3).toNumber();        t = TimeClip(MakeDate(Day(t), MakeTime(hour, min, sec, ms)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCHours"));}QScriptValueImpl Date::method_setDate(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal date = context->argument(0).toNumber();        t = TimeClip(UTC(MakeDate(MakeDay(YearFromTime(t), MonthFromTime(t), date), TimeWithinDay(t))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setDate"));}QScriptValueImpl Date::method_setUTCDate(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal date = context->argument(0).toNumber();        t = TimeClip(MakeDate(MakeDay(YearFromTime(t), MonthFromTime(t), date), TimeWithinDay(t)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCDate"));}QScriptValueImpl Date::method_setMonth(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal month = context->argument(0).toNumber();        qsreal date = (context->argumentCount() < 2) ? DateFromTime(t) : context->argument(1).toNumber();        t = TimeClip(UTC(MakeDate(MakeDay(YearFromTime(t), month, date), TimeWithinDay(t))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setMonth"));}QScriptValueImpl Date::method_setUTCMonth(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal month = context->argument(0).toNumber();        qsreal date = (context->argumentCount() < 2) ? DateFromTime(t) : context->argument(1).toNumber();        t = TimeClip(MakeDate(MakeDay(YearFromTime(t), month, date), TimeWithinDay(t)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCMonth"));}QScriptValueImpl Date::method_setFullYear(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = LocalTime(self.internalValue().toNumber());        qsreal year = context->argument(0).toNumber();        qsreal month = (context->argumentCount() < 2) ? MonthFromTime(t) : context->argument(1).toNumber();        qsreal date = (context->argumentCount() < 3) ? DateFromTime(t) : context->argument(2).toNumber();        t = TimeClip(UTC(MakeDate(MakeDay(year, month, date), TimeWithinDay(t))));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setFullYear"));}QScriptValueImpl Date::method_setUTCFullYear(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        qsreal year = context->argument(0).toNumber();        qsreal month = (context->argumentCount() < 2) ? MonthFromTime(t) : context->argument(1).toNumber();        qsreal date = (context->argumentCount() < 3) ? DateFromTime(t) : context->argument(2).toNumber();        t = TimeClip(MakeDate(MakeDay(year, month, date), TimeWithinDay(t)));        QScriptValueImpl r(eng, t);        self.setInternalValue(r);        return r;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setUTCFullYear"));}QScriptValueImpl Date::method_setYear(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        if (qIsNaN(t))            t = 0;        else            t = LocalTime(t);        qsreal year = context->argument(0).toNumber();        qsreal r;        if (qIsNaN(year)) {            r = qSNaN();        } else {            if ((eng->toInteger(year) >= 0) && (eng->toInteger(year) <= 99))                year += 1900;            r = MakeDay(year, MonthFromTime(t), DateFromTime(t));            r = UTC(MakeDate(r, TimeWithinDay(t)));            r = TimeClip(r);        }        QScriptValueImpl v = QScriptValueImpl(eng, r);        self.setInternalValue(v);        return v;    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.setYear"));}QScriptValueImpl Date::method_toUTCString(QScriptContextPrivate *context, QScriptEnginePrivate *eng, QScriptClassInfo *classInfo){    QScriptValueImpl self = context->thisObject();    if (self.classInfo() == classInfo) {        qsreal t = self.internalValue().toNumber();        return QScriptValueImpl(eng, ToUTCString(t));    }    return context->throwError(QScriptContext::TypeError,                               QLatin1String("Date.prototype.toUTCString"));}} } // namespace QScript::Ecma#endif // QT_NO_SCRIPT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -