84 lines
2.6 KiB
TypeScript
84 lines
2.6 KiB
TypeScript
import addon from '../utils/addon';
|
|
import { NativeElement, Component } from '../core/Component';
|
|
import { checkIfNativeElement } from '../utils/helpers';
|
|
import { QVariant } from './QVariant';
|
|
import { DateFormat } from '../QtEnums';
|
|
|
|
export class QTime extends Component {
|
|
constructor(nativeOrHours?: NativeElement | number, m?: number, s = 0, ms = 0) {
|
|
const count = arguments.length;
|
|
let native: NativeElement;
|
|
if (count > 1) {
|
|
native = new addon.QTime(nativeOrHours, m, s, ms);
|
|
} else if (checkIfNativeElement(nativeOrHours)) {
|
|
native = nativeOrHours as NativeElement;
|
|
} else {
|
|
native = new addon.QTime();
|
|
}
|
|
super(native);
|
|
}
|
|
addMSecs(ms: number): QTime {
|
|
return new QTime(this.native.addMSecs(ms));
|
|
}
|
|
addSecs(s: number): QTime {
|
|
return new QTime(this.native.addSecs(s));
|
|
}
|
|
elapsed(): number {
|
|
return this.native.elapsed();
|
|
}
|
|
hour(): number {
|
|
return this.native.hour();
|
|
}
|
|
isNull(): boolean {
|
|
return this.native.isNull();
|
|
}
|
|
isValid(): boolean {
|
|
return this.native.isValid();
|
|
}
|
|
minute(): number {
|
|
return this.native.minute();
|
|
}
|
|
msec(): number {
|
|
return this.native.msec();
|
|
}
|
|
msecsSinceStartOfDay(): number {
|
|
return this.native.msecsSinceStartOfDay();
|
|
}
|
|
msecsTo(t: QTime): number {
|
|
return this.native.msecsTo(t.native);
|
|
}
|
|
restart(): number {
|
|
return this.native.restart();
|
|
}
|
|
second(): number {
|
|
return this.native.second();
|
|
}
|
|
secsTo(t: QTime): number {
|
|
return this.native.secsTo(t.native);
|
|
}
|
|
setHMS(h: number, m: number, s: number, ms = 0): boolean {
|
|
return this.native.setHMS(h, m, s, ms);
|
|
}
|
|
start(): void {
|
|
this.native.start();
|
|
}
|
|
toString(format: string | DateFormat): string {
|
|
return this.native.toString$(format);
|
|
}
|
|
static currentTime(): QTime {
|
|
return new QTime(addon.QTime.currentTime());
|
|
}
|
|
static fromMSecsSinceStartOfDay(msecs: number): QTime {
|
|
return new QTime(addon.QTime.fromMSecsSinceStartOfDay(msecs));
|
|
}
|
|
static isValid(h: number, m: number, s: number, ms = 0): boolean {
|
|
return addon.QTime.isValid(h, m, s, ms);
|
|
}
|
|
static fromString(timeString: string, format: string | DateFormat): QTime {
|
|
return new QTime(addon.QTime.fromString(timeString, format));
|
|
}
|
|
static fromQVariant(variant: QVariant): QTime {
|
|
return new QTime(addon.QTime.fromQVariant(variant.native));
|
|
}
|
|
}
|