@grapecity/inputman
Version:
日本仕様の入力用JavaScriptコントロールセット
4,087 lines • 146 kB
TypeScript
declare namespace GC {
export namespace InputMan {
/**
* Represents the license key for evaluation version and production version.
*/
var LicenseKey: string;
var appearanceStyle: AppearanceStyle;
export abstract class GcInputManBase {
constructor(inputEl: HTMLInputElement | HTMLTextAreaElement, config?: GcInputManBaseConfig);
/** Get or Set */
autoDropDown: boolean;
/** Get or Set */
showClearButton: boolean;
/** Get or Set */
showCopyButton: boolean;
/** Get or Set */
showHelpButton: boolean;
/** Get or Set */
helpContent: string;
/** Get or Set */
copyMessage: string;
/** Get or Set */
copiedMessage: string;
/** Get or Set */
enabled: boolean;
/** Get or Set */
readOnly: boolean;
/** Get or Set */
visible: boolean;
/** Set */
dropDownButtonVisible: boolean;
/** Set */
spinButtonVisible: boolean;
/** Get or Set */
autoScale: boolean;
/** Get or Set */
minScaleFactor: number;
/** Get or Set */
container: HTMLElement;
/** Get */
readonly dropDownWindow: IDropDownContainer;
/** Get */
readonly componentName: string;
/** Get or Set */
tabIndex: number;
/** Get or Set */
floatingLabelText: string;
/** Get or Set */
floatingLabelType: FloatingLabelType;
/** Get or Set */
floatingLabelDirection: FloatingLabelDirection;
/** Get or Set */
width: number | string;
/** Get or Set */
height: number | string;
/** Get or Set */
minWidth: number | string;
/** Get or Set */
minHeight: number | string;
/** Get or Set */
maxWidth: number | string;
/** Get or Set */
maxHeight: number | string;
/** Get or Set */
fontSize: number | string;
setAutoDropDown(v: boolean): void;
getEnabled(): boolean;
setEnabled(v: boolean): void;
getReadOnly(): boolean;
getVisible(): boolean;
setVisible(v: boolean): void;
createDropDown(dropDownButtonAlignment?: DropDownButtonAlignment, showDropDown?: boolean): IDropDownContainer;
setDropDownButtonVisible(value: boolean): void;
getDropDownWindow(): IDropDownContainer;
getOriginalInputElement(): HTMLInputElement | HTMLTextAreaElement;
getUIInputElement(): HTMLInputElement | HTMLTextAreaElement;
getLayoutElement(): HTMLDivElement;
setAutoScale(value: boolean): void;
setMinScaleFactor(value: number): void;
autoScaleText(): void;
setExitOnLastChar(v: boolean): void;
setEditMode(v: EditMode): void;
setExitOnLeftRightKey(v: ExitOnLeftRightKey): void;
setText(value: string): void;
setWatermarkDisplayNullText(v: string): void;
setWatermarkNullText(v: string): void;
clear(): void;
getText(): string;
getDisplayText(): string;
getUseClipboard(): boolean;
setUseClipboard(v: boolean): void;
getIsOverwrite(): boolean;
setSelectedText(v: string): void;
getSelectedText(): string;
getSelectionLength(): number;
setSelectionLength(v: number): void;
getSelectionStart(): number;
setSelectionStart(v: number): void;
selectAll(): void;
deselectAll(): void;
setExitOnEnterKey(value: ExitKey): void;
setReadOnly(v: boolean): void;
setFocus(): void;
onSyncValueToOriginalInput(cb: (value: boolean | number | string | object, originalInput: HTMLInputElement | HTMLTextAreaElement) => void): void;
getHost(): HTMLElement;
setContainer(el: HTMLElement): void;
destroy(): void;
onEditStatusChanged(f: (sender: this) => void): void;
removeEditStatusChanged(f: (sender: this) => void): void;
onTextChanged(f: (sender: this) => void): void;
removeTextChanged(f: (sender: this) => void): void;
onSpinUp(f: (sender: this) => void): void;
removeSpinUp(f: (sender: this) => void): void;
onSpinDown(f: (sender: this) => void): void;
removeSpinDown(f: (sender: this) => void): void;
onKeyExit(f: (sender: this) => void): void;
removeKeyExit(f: (sender: this) => void): void;
onInvalidInput(f: (sender: this) => void): void;
removeInvalidInput(f: (sender: this) => void): void;
onInput(f: (sender: this, args: InputArgs) => void): void;
removeInput(f: (sender: this, args: InputArgs) => void): void;
onFocusOut(f: (sender: this) => void): void;
removeFocusOut(f: (sender: this) => void): void;
onKeyUp(f: (sender: this, args?: CustomEventArgs) => void): void;
removeKeyUp(f: (sender: this, args?: CustomEventArgs) => void): void;
onKeyDown(f: (sender: this, args?: CustomEventArgs) => void): void;
removeKeyDown(f: (sender: this, args?: CustomEventArgs) => void): void;
}
export class GcCalculator {
constructor(container: HTMLElement, config?: GcCalculatorConfig);
/** Get */
/**
* Get the Wrap HtmlElement of current control
*/
readonly element: HTMLElement;
/** Get or Set */
/**
* Indicate whether the control displays the output box
* The default value for this property is <b>true</b>.
*/
showOutput: boolean;
/** Get or Set */
visible: boolean;
/** Get or Set */
enabled: boolean;
/** Get */
/**
* Indicate whether the current control status is invalid,
* For example, divide by 0, the status will become invaild
*/
readonly isInvalid: boolean;
/** Get */
/**
* Indicate the displayed text
*/
readonly text: string;
/** Get or Set */
/**
* Set the current calculator value, the value will be used as the left operand,
* the value of memory value will not change, if the calculator is in an invalid state, the invalid state will be removed
*/
value: number | null;
/** Get */
readonly memoryValue: number | null;
/** Get or Set */
buttonText: object;
/** Get */
readonly componentName: string;
destroy(): void;
getHost(): HTMLElement;
/**
* let the calcultor get the focus
*/
focus(): void;
/**
* restore the button text with default state, if some cutomized texts are applied before.
*/
restoreButtonText(): void;
/**
* perform the click action just like clicking the specific key
*/
performClick(btnKey: GcCalculatorKey): void;
}
export class GcCalendar {
constructor(container: HTMLElement, config?: GcCalendarConfig);
/** Get */
readonly calendarZoomRange: CalendarZoomRange | CalendarType[];
/** Get or Set */
dimensions: Dimensions;
/** Get or Set */
focusDate: Date;
/** Get or Set */
selections: Date[];
/** Get or Set */
selectedDate: Date;
/** Get */
readonly holidayGroupsCount: number;
/** Get or Set */
maxDate: Date;
/** Get or Set */
minDate: Date;
/** Get or Set */
maxSelectionCount: number;
/** Get or Set */
selectionMode: CalendarSelectionMode;
/** Get or Set */
allowSelection: AllowSelection;
/** Get or Set */
emptyRows: EmptyRows;
/** Get or Set */
enabled: boolean;
/** Get or Set */
firstDayOfWeek: DayOfWeek;
/** Get or Set */
firstFiscalMonth: Months;
/** Get or Set */
firstMonthInView: Months;
/** Get or Set */
yearMonthFormat: string;
/** Get or Set */
weekTitleSelect: boolean;
/** Get or Set */
weekNumberSelect: boolean;
/** Get or Set */
headerFormat: string;
/** Get or Set */
showZoomButton: boolean;
/** Get or Set */
showRokuyou: Rokuyou;
/** Get or Set */
showHeader: boolean;
/** Get or Set */
showToday: boolean;
/** Get or Set */
showWeekNumber: boolean;
/** Get or Set */
showTrailing: boolean;
/** Get or Set */
calendarType: CalendarType;
/** Get or Set */
calendarYear: CalendarYear;
/** Get or Set */
visible: boolean;
/** Get or Set */
showNavigator: CalendarNavigators;
/** Get or Set */
navigatorOrientation: NavigatorOrientation;
/** Get or Set */
overrideTipText: string;
/** Get */
readonly componentName: string;
/** Get or Set */
scrollRate: number;
/** Get or Set */
autoSwitch: boolean;
/** Get or Set */
showAnimation: boolean;
/** Set */
showContextMenu: boolean;
/** Get or Set */
allowResize: boolean;
/** Get or Set */
width: number | string;
/** Get or Set */
height: number | string;
/** Get or Set */
minWidth: number | string;
/** Get or Set */
minHeight: number | string;
/** Get or Set */
maxWidth: number | string;
/** Get or Set */
maxHeight: number | string;
destroy(): void;
setFocusDate(value: Date): this;
getFocusDate(): Date;
setMaxDate(value: Date): void;
setMinDate(value: Date): void;
setMaxSelectionCount(value: number): void;
setSelectionMode(value: CalendarSelectionMode): void;
setSelections(value: Date[]): this;
getSelections(): Date[];
setAllowSelection(value: AllowSelection): void;
setSelectedDate(value: Date, disableEvents?: boolean): this;
getSelectedDate(): Date;
setEmptyRows(value: EmptyRows): void;
setEnabled(value: boolean): this;
setFirstDayOfWeek(value: DayOfWeek): void;
setFirstFiscalMonth(value: Months): void;
setFirstMonthInView(value: Months): void;
setYearMonthFormat(value: string): void;
setWeekTitleSelect(value: boolean): void;
setWeekNumberSelect(value: boolean): void;
setHeaderFormat(value: string): void;
setShowZoomButton(value: boolean): void;
setShowRokuyou(value: Rokuyou): void;
setShowHeader(value: boolean): void;
setShowToday(value: boolean): void;
setShowWeekNumber(value: boolean): void;
setShowTrailing(value: boolean): void;
setCalendarType(value: CalendarType, ignoreAnimation?: boolean): this;
setCalendarYear(value: CalendarYear): void;
setVisible(value: boolean): this;
setCalendarDimensions(width: number, height: number): void;
setShowNavigator(value: CalendarNavigators): void;
setNavigatorOrientation(value: NavigatorOrientation): void;
setOverrideTipText(value: string): void;
getHost(): HTMLElement;
scrollMonth(value: number): this;
scrollYear(value: number): this;
getWeekday(weekday: string): WeekDay;
getHolidayGroupIndex(item: HolidayGroup): number;
getHolidayGroup(item: string | number): HolidayGroup;
getHolidayGroupsCount(): number;
addHolidayGroup(item: HolidayGroup): void;
insertHolidayGroup(index: number, item: HolidayGroup): void;
removeHolidayGroup(item: HolidayGroup): void;
removeHolidayGroupAt(index: number): void;
clearHolidayGroups(): void;
onClickDate(callBack: (sender: this) => void): void;
onScrolled(callBack: (sender: this) => void): void;
onFocusDateChanged(callBack: (sender: this) => void): void;
onSelectedDateChanged(callBack: (sender: this) => void): void;
}
export class HolidayGroup {
constructor(name?: string, isActive?: boolean);
/** Get */
readonly count: number;
/** Get or Set */
isActive: boolean;
getHoliday(index: number): Holiday;
getHolidaysCount(): number;
getHolidayIndex(item: Holiday): void;
addHoliday(item: Holiday): void;
clearHolidays(): void;
insertHoliday(index: number, item: Holiday): void;
removeHoliday(item: Holiday): void;
removeHolidayAt(index: number): void;
getIsActive(): boolean;
setIsActive(isActive: boolean): void;
setOverride(weekday: string, overrideFlag: HolidayOverride): void;
getOverride(weekday: string): HolidayOverride;
setWeekFlags(weekday: string, flags: WeekFlags): void;
getWeekFlags(weekday: string): WeekFlags;
}
export class Holiday {
constructor(name?: string, startMonth?: number, startDay?: number, endMonth?: number, endDay?: number);
/** Get or Set */
name: string;
/** Get or Set */
startMonth: number;
/** Get or Set */
startDay: number;
/** Get or Set */
endMonth: number;
/** Get or Set */
endDay: number;
setName(value: string): void;
getName(): string;
setStartMonth(value: number): void;
getStartMonth(): number;
setStartDay(value: number): void;
getStartDay(): number;
setEndMonth(value: number): void;
getEndMonth(): number;
setEndDay(value: number): void;
getEndDay(): number;
isHoliday(date: Date): boolean;
}
export class ForceHoliday {
constructor(name?: string, startDate?: Date, endDate?: Date);
/** Get or Set */
name: string;
/** Get or Set */
start: Date;
/** Get or Set */
end: Date;
setName(value: string): void;
getName(): string;
setStart(value: Date | string): void;
getStart(): Date;
setEnd(value: Date | string): void;
getEnd(): Date;
isHoliday(date: Date): boolean;
}
export class ForceWorkday {
constructor(name?: string, startDate?: Date, endDate?: Date);
/** Get or Set */
name: string;
/** Get or Set */
start: Date;
/** Get or Set */
end: Date;
setName(value: string): void;
getName(): string;
setStart(value: Date | string): void;
getStart(): Date;
setEnd(value: Date | string): void;
getEnd(): Date;
isHoliday(date: Date): boolean;
}
export class DayOfWeekHoliday {
constructor(name?: string, month?: MonthFlags, dayOfWeekInMonth?: WeekFlags, dayOfWeek?: DayOfWeek);
/** Get or Set */
name: string;
/** Get or Set */
month: MonthFlags;
/** Get or Set */
dayOfWeekInMonth: WeekFlags;
/** Get or Set */
dayOfWeek: DayOfWeek;
setName(value: string): void;
getName(): string;
setMonth(value: MonthFlags): void;
getMonth(): MonthFlags;
setDayOfWeekInMonth(value: WeekFlags): void;
getDayOfWeekInMonth(): WeekFlags;
setDayOfWeek(value: DayOfWeek): void;
getDayOfWeek(): DayOfWeek;
isHoliday(date: Date): boolean;
}
export class ForceDayOfWeekHoliday {
constructor(name?: string, year?: number, month?: MonthFlags, dayOfWeekInMonth?: WeekFlags, dayOfWeek?: DayOfWeek);
/** Get */
readonly isYearly: boolean;
/** Get or Set */
year: number;
/** Get or Set */
name: string;
/** Get or Set */
month: MonthFlags;
/** Get or Set */
dayOfWeekInMonth: WeekFlags;
/** Get or Set */
dayOfWeek: DayOfWeek;
getIsYearly(): boolean;
setYear(value: number): void;
getYear(): number;
setName(value: string): void;
getName(): string;
setMonth(value: MonthFlags): void;
getMonth(): MonthFlags;
setDayOfWeekInMonth(value: WeekFlags): void;
getDayOfWeekInMonth(): WeekFlags;
setDayOfWeek(value: DayOfWeek): void;
getDayOfWeek(): DayOfWeek;
isHoliday(date: Date): boolean;
}
export class ForceDayOfWeekWorkday {
constructor(name?: string, year?: number, month?: number, dayOfWeekInMonth?: WeekFlags, dayOfWeek?: DayOfWeek);
/** Get */
readonly isYearly: boolean;
/** Get or Set */
year: number;
/** Get or Set */
name: string;
/** Get or Set */
month: MonthFlags;
/** Get or Set */
dayOfWeekInMonth: WeekFlags;
/** Get or Set */
dayOfWeek: DayOfWeek;
getIsYearly(): boolean;
setYear(value: number): void;
getYear(): number;
setName(value: string): void;
getName(): string;
setMonth(value: MonthFlags): void;
getMonth(): MonthFlags;
setDayOfWeekInMonth(value: WeekFlags): void;
getDayOfWeekInMonth(): WeekFlags;
setDayOfWeek(value: DayOfWeek): void;
getDayOfWeek(): DayOfWeek;
isHoliday(date: Date): boolean;
}
export class WeekdaysGroup {
constructor();
fireWeekDayChangedEvent(propertyName: string): void;
monday(): WeekDay;
tuesday(): WeekDay;
wednesday(): WeekDay;
thursday(): WeekDay;
friday(): WeekDay;
saturday(): WeekDay;
sunday(): WeekDay;
weekDay(index: number): WeekDay;
}
export class WeekDay {
constructor(owner: WeekdaysGroup);
setDayName(value: string): void;
getReflectToTitle(): boolean;
setReflectToTitle(value: boolean): void;
getWeekFlags(): WeekFlags;
setWeekFlags(value: WeekFlags): void;
}
export class GcComboBox {
constructor(ele: HTMLSelectElement, option?: ComboBoxConfig);
/** Get or Set */
selectedIndex: number;
/** Get or Set */
selectedItem: string | object;
/** Get or Set */
selectedValue: number | string | boolean | object;
/** Get or Set */
checkedIndices: number[];
/** Get or Set */
checkedItems: object[] | string[];
/** Get or Set */
checkedValues: number[] | string[] | boolean[] | object[];
/** Get or Set */
items: number[] | string[] | boolean[] | object[];
/** Get */
readonly displayText: string;
/** Get or Set */
readOnly: boolean;
/** Get */
readonly isOverwrite: boolean;
/** Get */
readonly dropDownWindow: IDropDownContainer;
/** Get or Set */
allowDropDownResize: boolean;
/** Get or Set */
allowColumnResize: boolean;
/** Get or Set */
text: string;
/** Get or Set */
autoFilter: AutoFilter;
/** Get or Set */
autoSelect: boolean;
/** Get or Set */
editable: boolean;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
ellipsis: EllipsisMode;
/** Get or Set */
acceptsCrlf: CrLfMode;
/** Get or Set */
acceptsTabChar: TabCharMode;
/** Get or Set */
ellipsisString: string;
/** Get or Set */
editMode: EditMode;
/** Get or Set */
exitOnLeftRightKey: ExitOnLeftRightKey;
/** Get or Set */
highlightText: boolean;
/** Get or Set */
useClipboard: boolean;
/** Get or Set */
exitOnEnterKey: ExitKey;
/** Get or Set */
showTip: boolean;
/** Get or Set */
enabled: boolean;
/** Get or Set */
visible: boolean;
/** Get or Set */
container: HTMLElement;
/** Get or Set */
autoDropDown: boolean;
/** Get or Set */
dropDownButtonVisible: boolean;
/** Set */
spinButtonVisible: boolean;
/** Get or Set */
spinWheel: boolean;
/** Get or Set */
showClearButton: boolean;
/** Get or Set */
showHelpButton: boolean;
/** Get or Set */
showCopyButton: boolean;
/** Get or Set */
helpContent: string;
/** Get or Set */
copyMessage: string;
/** Get or Set */
copiedMessage: string;
/** Get or Set */
autoScale: boolean;
/** Get or Set */
minScaleFactor: number;
/** Get */
readonly componentName: string;
/** Set */
spinButton: SpinButtonAlignment;
/** Get or Set */
multipleItemSeparator: string;
/** Get or Set */
tabIndex: number;
/** Get or Set */
autoCompleteMode: AutoCompleteMode;
/** Get or Set */
autoCompleteMatchMode: AutoCompleteMatchMode;
/** Get or Set */
floatingLabelText: string;
/** Get or Set */
floatingLabelType: FloatingLabelType;
/** Get or Set */
floatingLabelDirection: FloatingLabelDirection;
/** Get or Set */
width: number | string;
/** Get or Set */
height: number | string;
/** Get or Set */
minWidth: number | string;
/** Get or Set */
minHeight: number | string;
/** Get or Set */
maxWidth: number | string;
/** Get or Set */
maxHeight: number | string;
/** Get or Set */
fontSize: number | string;
/** Get */
readonly dropDown: IDropDownContainer;
/** Set */
allowSpin: SpinType;
/** Get or Set */
checkBySpace: boolean;
/** Get */
readonly dropDownType: ComboDropDownType;
/** Get */
readonly displayMemberPath: string;
/** Get */
readonly valueMemberPath: string;
/** Get */
readonly dropDownList: GcListBox;
/** Get */
readonly dropDownTree: IComboBoxDropDownTree;
/** Set */
showContextMenu: boolean;
destroy(): void;
addEventListener(eventName: GcComboBoxEvent, func: (sender: this, eventArgs?: object) => void): void;
removeEventListener(eventName: GcComboBoxEvent, func?: (sender: this, eventArgs?: object) => void): void;
getSelectedIndex(): number;
getSelectedItem(): object | string;
getSelectedValue(): number | string | boolean | object;
setSelectedIndex(index: number): void;
setSelectedValue(value: number | string | boolean | object): void;
setSelectedItem(item: object | string): void;
getCheckedIndices(): number[];
getCheckedItems(): object[];
getCheckedValues(): number[] | string[] | boolean[] | object[];
setCheckedIndices(indices: number[]): void;
setCheckedValues(values: number[] | string[] | boolean[] | object[]): void;
setCheckedItems(items: object[]): void;
clearSelected(): void;
clearChecked(): void;
setItems(items: object[]): void;
getItems(): number[] | string[] | boolean[] | object[];
addItem(item: number | string | boolean | object, parentItem?: object): void;
addItems(items: number[] | string[] | boolean[] | object[], parentItem?: object): void;
insertItems(items: number[] | string[] | boolean[] | object[], start: number, parentItem?: object): void;
clearItems(): void;
insertItem(item: number | string | boolean | object, start: number, parentItem?: object): void;
findString(str: string, start?: number, col?: string): number;
findStringExact(str: string, start?: number, col?: string): number;
findStringInAll(str: string, start?: number): number;
findStringExactInAll(str: string, start?: number): number;
setAllowDropDownResize(value: boolean): void;
setAllowColumnResize(value: boolean): void;
getDisplayText(): string;
addSpinButton(leftSide: boolean): void;
filter(filterInfos: FilterInfo[] | FilterFunc): void;
sort(sortInfo: SortInfo | SortFunc | TreeViewSortFunc): void;
setAutoFilter(type: AutoFilter): void;
setAutoSelect(value: boolean): void;
doSpinDown(increment?: number): void;
doSpinUp(increment?: number): void;
setEditable(value: boolean): void;
setReadOnly(value: boolean): void;
getReadOnly(): boolean;
setWatermarkDisplayNullText(v: string): void;
setWatermarkNullText(v: string): void;
setAcceptsCrlf(v: CrLfMode): void;
setEditMode(v: EditMode): void;
setEllipsis(v: EllipsisMode): void;
setEllipsisString(v: string): void;
setExitOnLeftRightKey(v: ExitOnLeftRightKey): void;
setHighlightText(v: boolean): void;
getIsOverwrite(): boolean;
setUseClipboard(v: boolean): void;
setExitOnEnterKey(v: ExitKey): void;
setShowTip(value: boolean): void;
setEnabled(v: boolean): void;
setVisible(v: boolean): void;
updateColumnAutoFit(config: AutofitInfo[]): void;
getDropDownWindow(): IDropDownContainer;
setContainer(el: HTMLElement): void;
setAutoDropDown(v: boolean): void;
setDropDownButtonVisible(value: boolean): void;
setText(text: string): void;
setSpinWheel(v: boolean): void;
setFocus(): void;
setSelectionStart(value: number): void;
selectAll(): void;
getTargetControl(): GcInputManBase;
setShowClearButton(v: boolean): void;
setAutoScale(value: boolean): void;
setMinScaleFactor(value: number): void;
autoScaleText(): void;
getDropDownColumnWidth(col: string): number | null;
setDropDownColumnWidth(col: string, width: number | string): void;
getHost(): HTMLElement;
}
export class GcDateTime extends GcInputManBase {
constructor(inputEl: HTMLInputElement, config?: GcDateTimeConfig);
/** Get or Set */
selectionStart: number;
/** Get */
readonly isOverwrite: boolean;
/** Get or Set */
selectionLength: number;
/** Get or Set */
value: Date | string;
/** Get or Set */
number: number | string;
/** Get or Set */
text: string;
/** Get or Set */
selectedText: string;
/** Get */
readonly currentField: DateCursorPosition;
/** Get */
readonly displayText: string;
/** Get or Set */
acceptsCrlf: CrLfMode;
/** Get or Set */
clipContent: ClipContent;
/** Get or Set */
useClipboard: boolean;
/** Get or Set */
maxDate: Date | string;
/** Get or Set */
minDate: Date | string;
/** Get or Set */
formatPattern: string;
/** Get or Set */
spinIncrement: number;
/** Get or Set */
spinOnKeys: boolean;
/** Get or Set */
spinWheel: boolean;
/** Get or Set */
spinWrap: boolean;
/** Get or Set */
allowSpin: boolean | SpinType;
/** Get or Set */
displayFormatPattern: string;
/** Get or Set */
watermarkEmptyEraText: string;
/** Get or Set */
displayWatermarkEmptyEraText: string;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get or Set */
promptChar: string;
/** Get or Set */
editMode: EditMode;
/** Get or Set */
AMDesignator: string;
/** Get or Set */
PMDesignator: string;
/** Get or Set */
twoDigitYearMax: number;
/** Get or Set */
hour12Mode: Hour12Mode;
/** Get or Set */
cursorPosition: DateCursorPosition;
/** Get or Set */
tabAction: TabAction;
/** Get or Set */
maxMinBehavior: MaxMinBehavior;
/** Get or Set */
highlightText: HighlightText;
/** Get or Set */
midnightAs24: boolean;
/** Get or Set */
exitOnLastChar: boolean;
/** Get or Set */
exitOnLeftRightKey: ExitOnLeftRightKey;
/** Get or Set */
showLiterals: ShowLiterals;
/** Get or Set */
adjustValueOnFocus: boolean;
/** Get or Set */
useTwoDigitYearMax: boolean;
/** Get or Set */
validateMode: ValidateMode;
/** Get or Set */
watermarkDisplayEmptyEraText: string;
/** Get or Set */
exitOnEnterKey: ExitKey;
/** Set */
spinButton: SpinButtonAlignment;
/** Get or Set */
autoConvert: boolean;
/** Set */
showContextMenu: boolean;
/** Get */
readonly dropDownCalendar: GcDropDownCalendar;
setAcceptsCrlf(v: CrLfMode): void;
setClipContent(v: ClipContent): void;
setMaxDate(v: Date | string): void;
setMinDate(v: Date | string): void;
setValue(v: Date | string): void;
getValue(): Date | null;
setNumber(v: number | string): void;
setFormatPattern(v: string): void;
setSpinIncrement(v: number): void;
setSpinOnKeys(v: boolean): void;
setSpinWheel(v: boolean): void;
setSpinWrap(v: boolean): void;
setAllowSpin(v: boolean | SpinType): void;
setDisplayFormatPattern(v: string): void;
setWatermarkEmptyEraText(v: string): void;
setDisplayWatermarkEmptyEraText(v: string): void;
setPromptChar(v: string): void;
setAMDesignator(v: string): void;
setPMDesignator(v: string): void;
setTwoDigitYearMax(v: number): void;
setHour12Mode(v: Hour12Mode): void;
setCursorPosition(v: DateCursorPosition): void;
setTabAction(v: TabAction): void;
setMaxMinBehavior(v: MaxMinBehavior): void;
setHighlightText(v: HighlightText): void;
setMidnightAs24(v: boolean): void;
setShowLiterals(value: ShowLiterals): void;
setAdjustValueOnFocus(value: boolean): void;
setUseTwoDigitYearMax(value: boolean): void;
setValidateMode(value: ValidateMode): void;
setWatermarkDisplayEmptyEraText(value: string): void;
doSpinDown(param1?: number, param2?: number): void;
doSpinUp(param1?: number, param2?: number): void;
getNumber(): number;
getCurrentField(): DateCursorPosition;
addSpinButton(alignment: SpinButtonAlignment): void;
onInvalidRange(f: (sender: this) => void): void;
removeInvalidRange(f: (sender: this) => void): void;
onInvalidValue(f: (sender: this) => void): void;
removeInvalidValue(f: (sender: this) => void): void;
onNumberChanged(f: (sender: this) => void): void;
removeNumberChanged(f: (sender: this) => void): void;
onValueChanged(f: (sender: this) => void): void;
removeValueChanged(f: (sender: this) => void): void;
addDropDown(
dropdownButtonAlignment: DropDownButtonAlignment,
type?: DateDropDownType,
config?: GcDateTimeCalendarConfig | GcDateTimeDropDownPickerConfig
): void;
addDropDownCalendar(dropdownButtonAlignment?: DropDownButtonAlignment): void;
getDropDownCalendar(): GcDropDownCalendar;
}
export class GcDateTimePicker {
constructor(eleHtml: HTMLElement, pickerConfig?: PickerConfig);
/** Get or Set */
value: Date;
/** Get or Set */
visible: boolean;
/** Get or Set */
maxDate: Date | string | number;
/** Get or Set */
minDate: Date | string | number;
/** Get or Set */
pickerType: PickerType;
/** Get or Set */
secondsInterval: Interval;
/** Get or Set */
minuteInterval: Interval;
/** Get or Set */
enabled: boolean;
/** Get or Set */
isShowSeconds: boolean;
/** Get or Set */
isShowMidnightAs24: boolean;
/** Get */
readonly componentName: string;
destroy(): void;
getHost(): HTMLElement;
setVisible(visible: boolean): void;
addEventListener(eventType: GcDateTimePickerEvent, func: (sender?: this, args?: GcDateTimePickerEventArgs) => void): void;
removeEventListener(eventType: GcDateTimePickerEvent, func: (sender?: this, args?: GcDateTimePickerEventArgs) => void): void;
setMaxDate(maxDate: Date | string | number): void;
setMinDate(minDate: Date | string | number): void;
setPickerType(type: PickerType): void;
showSeconds(v: boolean): void;
getValue(): Date;
setValue(date: Date): void;
showMidnightAs24(value: boolean): void;
setSecondsInterval(interval: Interval): void;
setMinuteInterval(interval: Interval): void;
setEnabled(value: boolean): void;
}
export abstract class DropDownBase {
constructor(dropDownContainer: IDropDownContainer);
}
export class GcDropDownSlider extends DropDownBase {
constructor(dropDownOwner: IDropDownSliderOwner, dropDownContainer: IDropDownContainer, config?: IGcDropDownSliderConfig);
/** Get or Set */
min: number;
/** Get or Set */
max: number;
/** Get or Set */
step: number | null;
/** Get or Set */
marks: number[];
/** Get or Set */
valueChangeMode: SliderValueChangeMode;
/** Get or Set */
direction: SliderDirection;
/** Get or Set */
showMarkLabel: boolean;
/** Get or Set */
markLabelFormat: FormatFunction;
/** Get or Set */
markLabelPosition: SliderTooltipPosition;
/** Get or Set */
tooltipShowMode: SliderTooltipShowMode;
/** Get or Set */
tooltipFormat: FormatFunction;
/** Get or Set */
tooltipPosition: SliderTooltipPosition;
/** Get or Set */
showMarkTip: boolean;
/** Get or Set */
markTipFormat: FormatFunction;
/** Get or Set */
keyStep: number;
/** Get or Set */
width: string | number;
/** Get or Set */
height: string | number;
}
export class GcDropDown {
/** Get or Set */
static animationType: DropDownAnimationType;
/** Get or Set */
static appendDropDownToBody: boolean;
}
export class GcDropDownCalendar extends DropDownBase {
constructor(dropDownOwner: IDropDownOwner, dropDownContainer: IDropDownContainer, config?: GcDateTimeCalendarConfig);
/** Get or Set */
calendarDimensions: Dimensions;
/** Get */
readonly selectedDate: Date;
/** Get or Set */
focusDate: Date;
/** Get */
readonly holidayGroupsCount: number;
/** Get or Set */
maxDate: Date;
/** Get or Set */
minDate: Date;
/** Get or Set */
defaultDate: Date | null;
/** Get or Set */
allowSelection: AllowSelection;
/** Get or Set */
emptyRows: EmptyRows;
/** Get or Set */
firstDayOfWeek: DayOfWeek;
/** Get or Set */
firstMonthInView: Months;
/** Get or Set */
yearMonthFormat: string;
/** Get or Set */
headerFormat: string;
/** Get or Set */
showZoomButton: boolean;
/** Get or Set */
showRokuyou: Rokuyou;
/** Get or Set */
showHeader: boolean;
/** Get or Set */
showToday: boolean;
/** Get or Set */
showWeekNumber: boolean;
/** Get or Set */
showTrailing: boolean;
/** Get or Set */
calendarType: CalendarType;
/** Get */
readonly calendarZoomRange: CalendarZoomRange | CalendarType[];
/** Get or Set */
showNavigator: CalendarNavigators;
/** Get or Set */
navigatorOrientation: NavigatorOrientation;
/** Get or Set */
overrideTipText: string;
/** Set */
showContextMenu: boolean;
/** Get or Set */
autoSwitch: boolean;
/** Get or Set */
width: number | string;
/** Get or Set */
height: number | string;
/** Get or Set */
allowResize: boolean;
/** Get or Set */
minWidth: number | string;
/** Get or Set */
minHeight: number | string;
/** Get or Set */
maxWidth: number | string;
/** Get or Set */
maxHeight: number | string;
getValue(): Date;
setValue(v: Date): void;
toggleOpen(showAnimation?: boolean): void;
close(showAnimation?: boolean): void;
open(): void;
getElement(): HTMLElement;
getSelectedDate(): Date;
setFocusDate(value: Date): void;
getFocusDate(): Date;
setMaxDate(value: Date): void;
setMinDate(value: Date): void;
setAllowSelection(value: AllowSelection): void;
setEmptyRows(value: EmptyRows): void;
setFirstDayOfWeek(value: DayOfWeek): void;
setFirstMonthInView(value: Months): void;
setYearMonthFormat(value: string): void;
setHeaderFormat(value: string): void;
setShowZoomButton(value: boolean): void;
setShowRokuyou(value: Rokuyou): void;
setShowHeader(value: boolean): void;
setShowToday(value: boolean): void;
setShowWeekNumber(value: boolean): void;
setShowTrailing(value: boolean): void;
setCalendarType(value: CalendarType, ignoreAnimation?: boolean): void;
setCalendarDimensions(width: number, height: number): void;
setShowNavigator(value: CalendarNavigators): void;
setNavigatorOrientation(value: NavigatorOrientation): void;
setOverrideTipText(value: string): void;
getHolidayGroup(indexOrName: string): HolidayGroup;
getHolidayGroupsCount(): number;
addHolidayGroup(item: HolidayGroup): void;
clearHolidayGroups(): void;
getHolidayGroupIndex(item: HolidayGroup): number;
insertHolidayGroup(index: number, item: HolidayGroup): void;
removeHolidayGroup(item: HolidayGroup): void;
removeHolidayGroupAt(index: number): void;
getWeekday(weekday: string): WeekDay;
onScrolled(callback: (sender: this, eArgs: object) => void): void;
onFocusDateChanged(callback: (sender: this, eArgs: object) => void): void;
onClickDate(callback: (sender: this, eArgs: object) => void): void;
onSelectedDateChanged(callback: (sender: this, eArgs: object) => void): void;
removeSelectedDateChanged(callback: (sender: this, eArgs: object) => void): void;
}
export class GcDropDownPicker extends DropDownBase {
constructor(dropDownOwner: IDropDownOwner, dropDownContainer: IDropDownContainer, pickerConfig?: GcDateTimeDropDownPickerConfig);
/** Get or Set */
selectedDate: Date;
/** Get or Set */
maxDate: Date;
/** Get or Set */
minDate: Date;
/** Get or Set */
defaultDate: Date | null;
/** Get or Set */
pickerType: PickerType;
/** Get or Set */
minuteInterval: Interval;
/** Get or Set */
secondsInterval: Interval;
/** Get or Set */
enabled: boolean;
getValue(): Date;
setValue(v: Date): void;
toggleOpen(showAnimation?: boolean): void;
onSelectedDateChanged(callback: (sender: this) => void): void;
setSelectedDate(value: Date): void;
close(showAnimation?: boolean): void;
open(): void;
getElement(): HTMLElement;
getSelectedDate(): Date;
setMaxDate(value: Date): void;
setMinDate(value: Date): void;
setPickerType(type: PickerType): void;
setMinuteInterval(interval: Interval): void;
setSecondsInterval(interval: Interval): void;
setEnabled(value: boolean): void;
}
/**
* Represents a component without layout for users to preserving form values across page refreshes and multiple sessions.
*/
export class GcFormPersistence {
/**
* Initializes a new instance of {@Link GcFormPersistence} class.
* @param element The Dom element that FormPersistence working on.
* @param config The JavaScript object containing initialization data for FormPersistence.
*/
constructor(form: HTMLElement, config?: GcFormPersistenceConfig);
/** Get or Set */
/**
* A unique identifier for this form's storage key.
* Required if using a form without an id. If unspecified, form id will be used.
*/
id: string;
/** Get or Set */
/**
* Indicate use sessionStorage or localStorage to store data, check {@Link StorageMode}
*/
storageMode: StorageMode;
/** Get or Set */
/**
* Indicate save data to storage on refresh or on submit, check {@Link SaveMode}
*/
saveMode: SaveMode;
/** Get */
/**
* Get GCIM component name.
*/
readonly componentName: string;
destroy(): void;
/**
* Persist form data.
*/
persist(): void;
/**
* Cancel persist form data.
*/
unPersist(): void;
/**
* Get value by name from storage.
* @param name Indicate a unique name for the data in storage.
*/
getValue(name: string): object;
/**
* Set value to storage.
* @param name Indicate a unique name for the data in storage.
* @param value Indicate the value of this key in storage.
*/
setValue(name: string, value: object): void;
/**
* Clear storage from localStorage or sessionStorage.
*/
clearStorage(): void;
/**
* Indicate if skip current element.
*/
skip(f: (element: HTMLElement) => boolean): void;
/**
* FormPersistence should support controls from different product, like IMJS, Wijmo or any other thirdparty component,
* so we allow thirdparty register an editor to FormPersistence, and make sure we can get value(save data to storage)
* and set value(recovery data from storage) to their controls.
* @param IThirdPartyEditor an instance which inherit from {@link IThirdPartyEditor}.
*/
static registerEditor(editor: IThirdpartyEditor): void;
}
export class GcFunctionKey {
constructor(ele: HTMLDivElement, config?: FunctionKeyConfig);
/** Get or Set */
keyRepeat: boolean;
/** Get or Set */
handleMouse: boolean;
/** Get or Set */
showTip: boolean;
/** Get or Set */
combinationKeyDisplayMode: CombinationKeyDisplayMode;
/** Get */
readonly componentName: string;
/** Get or Set */
visible: boolean;
/** Get or Set */
enabled: boolean;
getHost(): HTMLElement;
addFunctionKey(...infos: Array<FunctionKey | FunctionKeyInfo | ActivateCallBack>): void;
removeFunctionKey(...removeItems: Array<FunctionKey>): void;
onActived(callBack: ActivateCallBack): void;
setEnabled(value: boolean, key?: FunctionKey): void;
setVisible(value: boolean, key?: FunctionKey): void;
destroy(): void;
}
export class GcListBox {
constructor(ele: HTMLSelectElement | HTMLInputElement | HTMLElement, option?: ListBoxConfig);
/** Get */
readonly checkedItems: object[] | string[];
/** Get or Set */
checkedIndices: number[];
/** Get */
readonly selectedItems: object[] | string[];
/** Get */
readonly selectedItem: object | string;
/** Get or Set */
selectedIndices: number[];
/** Get or Set */
selectedIndex: number;
/** Get */
readonly selectedValues: number[] | string[] | boolean[] | object[];
/** Get */
readonly selectedValue: number | string | boolean | object;
/** Get or Set */
items: object[] | string[];
/** Get or Set */
checkedIndex: number;
/** Get or Set */
visibleItemCount: number;
/** Get or Set */
columns: ColumnConfig[];
/** Get or Set */
virtualMode: boolean;
/** Get or Set */
overflow: ScrollBars;
/** Get or Set */
allowResize: boolean;
/** Get or Set */
selectionMode: ListBoxSelectionMode;
/** Get or Set */
itemHeight: number;
/** Get or Set */
checkOnClick: boolean;
/** Get or Set */
allowColumnResize: boolean;
/** Get or Set */
visible: boolean;
/** Get or Set */
showTip: boolean;
/** Get or Set */
enabled: boolean;
/** Get */
readonly componentName: string;
/** Get or Set */
dragDrop: boolean;
/** Get or Set */
dragSource: ListBoxDragSource;
/** Get or Set */
findStringFilterComparator: FilterComparator;
destroy(): void;
addEventListener(eventName: GcListBoxEvent, func: (sender: this, eventArgs?: object) => void): void;
removeEventListener(eventName: GcListBoxEvent, func?: (sender: this, eventArgs?: object) => void): void;
getHost(): HTMLElement;
filter(filterInfos: FilterInfo[] | FilterFunc): void;
sort(sortInfo: SortInfo | SortFunc): void;
getCheckedItems(): object[] | string[];
getCheckedIndices(): number[];
setCheckedIndices(indices: number[]): void;
setCheckedIndex(index: number): void;
clearChecked(): void;
getSelectedItems(): object[] | string[];
getSelectedItem(): object | string;
getSelectedIndices(): number[];
getSelectedIndex(): number;
setSelectedIndices(indices: number[]): void;
setSelectedIndex(index: number): void;
clearSelected(): void;
getSelectedValues(): number[] | string[] | boolean[] | object[];
getSelectedValue(): number | string | boolean | object;
findString(str: string, start?: number, col?: string): number;
findStringExact(str: string, start?: number, col?: string): number;
findStringInAll(str: string, start?: number): number;
findStringExactInAll(str: string, start?: number): number;
layout(): void;
refresh(): void;
focus(): void;
resize(height: number, width: number): void;
resizeWidth(width: number): void;
resizeHeight(height: number): void;
setItems(items: object[] | string[]): void;
getItems(): string[] | object[];
addItem(item: object | string): void;
addItems(items: object[] | string[]): void;
insertItem(item: object | string, start: number): void;
insertItems(items: object[] | string[], start: number): void;
clearItems(): void;
setVisibleItemCount(num: number): void;
setColumns(cols: ColumnConfig[]): void;
addColumn(col: ColumnConfig, insertIndex?: number): void;
deleteColumn(name: string): void;
setVirtualMode(value: boolean): void;
setOverflow(value: ScrollBars): void;
setAllowResize(value: boolean): void;
setSelectionMode(mode: ListBoxSelectionMode): void;
updateColumnWidth(col: string, width: number | string): void;
updateColumnAutoFit(config: AutofitInfo[]): void;
setItemHeight(height: number): void;
setCheckOnClick(value: boolean): void;
setAllowColumnResize(value: boolean): void;
setVisible(value: boolean): void;
setShowTip(value: boolean): void;
setEnabled(value: boolean): void;
}
export class GcMask extends GcInputManBase {
constructor(inputEl: HTMLInputElement, config?: GcMaskConfig);
/** Get */
readonly isOverwrite: boolean;
/** Get or Set */
selectionLength: number;
/** Get or Set */
selectionStart: number;
/** Get or Set */
text: string;
/** Get or Set */
value: string;
/** Get or Set */
selectedText: string;
/** Get */
readonly valueIsFull: boolean;
/** Get */
readonly displayText: string;
/** Get */
readonly currentField: number;
/** Get or Set */
acceptsCrlf: CrLfMode;
/** Get or Set */
acceptsTabChar: TabCharMode;
/** Get or Set */
autoConvert: boolean;
/** Get or Set */
clipContent: ClipContent;
/** Get or Set */
exitOnLastChar: boolean;
/** Get or Set */
editMode: EditMode;
/** Get or Set */
exitOnLeftRightKey: ExitOnLeftRightKey;
/** Get or Set */
cursorPosition: number;
/** Get or Set */
formatPattern: string;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get or Set */
highlightText: HighlightText;
/** Get or Set */
promptChar: string;
/** Get or Set */
showLiterals: ShowLiterals;
/** Get or Set */
tabAction: TabAction;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
useClipboard: boolean;
/** Get or Set */
allowSpin: boolean | SpinType;
/** Get or Set */
exitOnEnterKey: ExitKey;
/** Get or Set */
spinWheel: boolean;
/** Get or Set */
spinOnKeys: boolean;
/** Set */
spinButton: SpinButtonAlignment;
/** Set */
showContextMenu: boolean;
setAcceptsCrlf(v: CrLfMode): void;
setAutoConvert(v: boolean): void;
setClipContent(v: ClipContent): void;
setCursorPosition(v: number): void;
setFormatPattern(v: string): void;
setValue(v: string): void;
setHighlightText(v: HighlightText): void;
setPromptChar(v: string): void;
setShowLiterals(v: ShowLiterals): void;
setTabAction(v: TabAction): void;
getValue(): string;
getValueIsFull(): boolean;
getCurrentField(): number;
onTextChanging(f: (sender: this, eventArgs: InputChangingEventArgs) => void): void;
removeTextChanging(f: (sender: this, eventArgs: InputChangingEventArgs) => void): void;
addSpinButton(alignment: SpinButtonAlignment): void;
setAllowSpin(v: boolean | SpinType): void;
onValueChanged(f: (sender: this) => void): void;
removeValueChanged(f: (sender: this) => void): void;
setSpinWheel(value: boolean): void;
setSpinOnKeys(value: boolean): void;
}
export class GcNumber extends GcInputManBase {
constructor(inputEl: HTMLInputElement, config?: GcNumberConfig);
/** Get or Set */
selectedText: string;
/** Get */
readonly displayText: string;
/** Get or Set */
selectionStart: number;
/** Get */
readonly isOverwrite: boolean;
/** Get or Set */
selectionLength: number;
/** Get or Set */
value: number;
/** Get or Set */
text: string;
/** Get or Set */
exitOnLeftRightKey: ExitOnLeftRightKey;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
watermarkZeroText: string;
/** Get or Set */
acceptsCrlf: CrLfMode;
/** Get or Set */
clipContent: ClipContent;
/** Get or Set */
useClipboard: boolean;
/** Get or Set */
formatDigit: string;
/** Get or Set */
displayFormatDigit: string;
/** Get or Set */
maxValue: string | number;
/** Get or Set */
minValue: string | number;
/** Get or Set */
positivePrefix: string;
/** Get or Set */
displayPositivePrefix: string;
/** Get or Set */
positiveSuffix: string;
/** Get or Set */
displayPositiveSuffix: string;
/** Get or Set */
negativePrefix: string;
/** Get or Set */
displayNegativePrefix: string;
/** Get or Set */
negativeSuffix: string;
/** Get or Set */
displayNegativeSuffix: string;
/** Get or Set */
valueSign: ValueSign;
/** Get or Set */
editMode: EditMode;
/** Get or Set */
adjustValueOnFocus: boolean;
/** Get or Set */
allowDeleteToNull: boolean;
/** Get or Set */
clearAction: ClearModeAction;
/** Get or Set */
acceptsDecimal: DecimalMode;
/** Get or Set */
currencySymbol: string;
/** Get or Set */
decimalPoint: string;
/** Get or Set */
maxMinBehavior: MaxMinBehavior;
/** Get or Set */
separator: string;
/** Get or Set */
highlightText: boolean;
/** Get or Set */
watermarkDisplayZeroText: string;
/** Get or Set */
spinOnKeys: boolean;
/** Get or Set */
spinWheel: boolean;
/** Get or Set */
spinWrap: boolean;
/** Get or Set */
allowSpin: boolean | SpinType;
/** Get or Set */
exitOnEnterKey: ExitKey;
/** Set */
spinButton: SpinButtonAlignment;
/** Get */
readonly slider: INumberSlider;
/** Get */
readonly dropDownSlider: GcDropDownSlider;
/** Set */
spinFromZeroWhenValueIsNull: boolean;
/** Get or Set */
autoConvert: boolean;
/** Set */
showContextMenu: boolean;
setExitOnLeftRightKey(v: ExitOnLeftRightKey): void;
setWatermarkZeroText(value: string): void;
setAcceptsCrlf(v: CrLfMode): void;
setClipContent(v: ClipContent): void;
setFormatDigit(v: string): void;
setDisplayFormatDigit(v: string): void;
setMaxValue(v: string | number): void;
setMinValue(v: string | number): void;
setPositivePrefix(v: string): void;
setDisplayPositivePrefix(v: string): void;
setPositiveSuffix(v: string): void;
setDisplayPositiveSuffix(v: string): void;
setNegativePrefix(v: string): void;
setDisplayNegativePrefix(v: string): void;
setNegativeSuffix(v: string): void;
setDisplayNegativeSuffix(v: string): void;
setValueSign(v: ValueSign): void;
setValue(v: number | string): void;
setAdjustValueOnFocus(v: boolean): void;
setAllowDeleteToNull(v: boolean): void;
setClearAction(v: ClearModeAction): void;
setAcceptsDecimal(v: DecimalMode): void;
setCurrencySymbol(v: string): void;
setDecimalPoint(v: string): void;
setMaxMinBehavior(v: MaxMinBehavior): void;
setSeparator(v: string): void;
setHighlightText(v: boolean): void;
getValue(): number | null;
doSpinDown(param1?: number, param2?: number): void;
doSpinUp(param1?: number, param2?: number): void;
setWatermarkDisplayZeroText(value: string): void;
addSpinButton(alignment: SpinButtonAlignment): void;
setSpinOnKeys(v: boolean): void;
setSpinWheel(v: boolean): void;
setSpinIncrement(v: number): void;
setSpinWrap(v: boolean): void;
setAllowSpin(value: boolean | SpinType): void;
onInvalidRange(callBack: (sender: this) => void): void;
removeInvalidRange(f: (sender: this) => void): void;
onValueChanged(callBack: (sender: this) => void): void;
removeValueChanged(f: (sender: this) => void): void;
destroy(): void;
addDropDownNumericPad(dropDownButtonAlignment?: DropDownButtonAlignment): this;
addDropDownCalculator(dropDownButtonAlignment?: DropDownButtonAlignment, calculatorConfig?: GcCalculatorConfig, asPopup?: boolean): this;
addDropDownSlider(dropDownButtonAlignment?: DropDownButtonAlignment, sliderConfig?: IGcDropDownSliderConfig): this;
}
export class GcShortcut {
constructor();
/** Get or Set */
blockMessage: boolean;
/** Get or Set */
triggerAll: boolean;
destroy(): void;
add(args: ShortcutKeyActionArgs): void;
remove(args: RemoveShortcutKeyActionArgs): void;
addEventListener(evtName: GcShortcutEvent, func: (sender: this, eventArgs: object) => void): void;
removeEventListener(evtName: GcShortcutEvent, func?: (sender: this, eventArgs: object) => void): void;
}
/**
* Represents a control for layout a software keyboard for users to input by mouse operation instead of hardware keyboard GcSoftKeyboard.
*/
export class GcSoftKeyboard {
/**
* Create an instance of GcSoftKeyboard.
* @param container indicate the container of GcSoftKeyboard.
* @param config indicate GcSoftKeyboard settings.
*/
constructor(container: HTMLElement, config?: GcSoftKeyboardConfig);
/** Get */
/**
* Get GCIM component name.
*/
readonly componentName: string;
/** Get or Set */
/**
* Indicate whether show all keys as random sort.
* The default value for this property is <b>false</b>.
*/
randomDisplay: boolean;
/** Get or Set */
/**
* Indicate whether hide button key value when mouse is on.
* The default value for this property is <b>false</b>.
*/
hideButtonWhenMouseOn: boolean;
/** Get or Set */
/**
* Get or set which kind of keys should be display in this control.
* The default value for this property is <b>DisplayType.All</b>.
*/
displayType: DisplayType;
/** Get or Set */
/**
* Indicate whether show alphabet keys in q w e r t y sequence.
* If this property is true, randomDisplay will not affect the display sequence.
* The default value for this property is <b>false</b>.
*/
qwertyLayout: boolean;
/** Get or Set */
/**
* Indicate whether current control is enabled.
* The default value for this property is <b>true</b>.
*/
enabled: boolean;
/** Get or Set */
/**
* Indicate whether display security option area in current control.
* The default value for this property is <b>true</b>.
*/
showSecurityOptions: boolean;
/** Get or Set */
/**
* Get or set security level, high or low, see {@link SecurityLevel}.
* The default value for this property is <b>SecurityLevel.Low</b>.
*/
securityLevel: SecurityLevel;
/** Get or Set */
/**
* Get or set which element soft keyboard will works on.
*/
target: HTMLInputElement;
/** Get or Set */
/**
* Indicate whether show capital letters and small letters at same time.
* The default value for this property is <b>true</b>.
*/
showCapitalLetters: boolean;
/** Get */
/**
* Get all numeric keys which displayed in current control.
*/
readonly numericKeys: IKeyCollection;
/** Get */
/**
* Get all alphabet keys which displayed in current control.
*/
readonly alphabetKeys: IKeyCollection;
/** Get */
/**
* Get all symbol keys which displayed in current control.
*/
readonly symbolKeys: IKeyCollection;
destroy(): void;
/**
* Render GcSoftKeyboard layout again.
*/
layout(): void;
/**
* Open GcSoftKeyboard.
*/
open(): void;
/**
* Close GcSoftKeyboard.
*/
close(): void;
/**
* Add event listener for GcSoftKeyboard.
* @param eventName Indicate {@link GcSoftKeyboardEvent} name.
* @param func Indicate callback function.
*/
addEventListener(eventName: GcSoftKeyboardEvent, func: (sender: this, eventArgs?: object) => void): void;
/**
* Remove event listener for GcSoftKeyboard.
* @param eventName Indicate {@link GcSoftKeyboardEvent} name.
* @param func Indicate callback function.
*/
removeEventListener(eventName: GcSoftKeyboardEvent, func?: (sender: this, eventArgs?: object) => void): void;
getHost(): HTMLElement;
}
export class GcTagBox {
constructor(ele: HTMLElement, option?: TagBoxConfig);
/** Get */
readonly componentName: string;
/** Get */
readonly items: object[] | string[];
/** Get */
readonly tagImageMemberPath: string | null;
/** Get */
readonly tagTextMemberPath: string | null;
/** Get */
readonly autoFilter: AutoFilter | null;
/** Get or Set */
readOnly: boolean;
/** Get or Set */
enabled: boolean;
/** Get or Set */
value: (object | string)[];
/** Get or Set */
text: string;
/** Get or Set */
imageAlignment: GcTagImageAlignment;
/** Get or Set */
showDropDownIfNoItems: boolean;
/** Get or Set */
container: HTMLElement;
/** Get or Set */
width: number | string;
/** Get or Set */
height: number | string;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get */
readonly tagTemplate: string | ((args: any) => HTMLElement);
/** Get or Set */
displayMode: TagBoxDisplayMode;
/** Get or Set */
allowCopyTag: boolean;
/** Get */
readonly allowDragTag: boolean;
/** Get or Set */
allowSelectTag: boolean;
/** Get or Set */
allowCustomTag: boolean;
/** Get or Set */
applyCustomTagKey: Key;
/** Get or Set */
separator: string;
/** Get */
readonly focused: boolean;
/** Get */
readonly showImage: boolean;
/** Get or Set */
minHeight: number | string;
/** Get or Set */
minWidth: number | string;
/** Get or Set */
maxHeight: number | string;
/** Get or Set */
maxWidth: number | string;
/** Get or Set */
tagValidator: (args: any) => boolean;
/** Get */
readonly allowDropDownResize: boolean;
/** Get */
readonly dropDownDisplayMemberPath: string;
/** Get or Set */
dropDownAlignmentMode: GcTagBoxDropDownAlignmentMode;
/** Get */
readonly maxTagWidth: number;
/** Get */
readonly uniqueTags: boolean;
/** Get or Set */
autoSelect: boolean;
/** Get */
readonly maxTagCount: number;
/** Get */
readonly tagsCount: number;
/** Get or Set */
showDropDown: boolean;
/** Get or Set */
allowResize: boolean;
/** Get or Set */
floatingLabelText: string;
/** Get or Set */
floatingLabelType: FloatingLabelType;
/** Get or Set */
floatingLabelDirection: FloatingLabelDirection;
/** Get or Set */
appendCustomTagToDropDown: boolean;
/** Get */
readonly dropDownTree: ITagBoxDropDownTree;
/** Get */
readonly dropDownType: TagBoxDropDownType;
/** Get or Set */
helpContent: string;
/** Get or Set */
showHelpButton: boolean;
/** Get or Set */
showClearButton: boolean;
destroy(): void;
addEventListener(eventName: GcTagBoxEvent, func: (sender: this, eventArgs?: object) => void): void;
removeEventListener(eventName: GcTagBoxEvent, func: (sender: this, eventArgs?: object) => void): void;
insertTag(tag: any, index: number): boolean;
removeTagAtIndex(index: number): boolean;
getElement(): HTMLElement;
getHost(): HTMLElement;
getDropDownWindow(): ITagBoxDropDown;
clear(): boolean;
appendTag(tag: any): boolean;
getDropDownWidth(): number;
getDropDownHeight(): number;
}
export class GcMultiLineTextBox extends GcInputManBase {
constructor(inputEl: HTMLTextAreaElement, config?: GcMultiLineTextBoxConfig);
/** Get */
readonly isOverwrite: boolean;
/** Get or Set */
lines: string[];
/** Get or Set */
selectedText: string;
/** Get or Set */
selectionLength: number;
/** Get or Set */
text: string;
/** Get or Set */
useClipboard: boolean;
/** Get or Set */
selectionStart: number;
/** Get */
readonly IMEReadingString: string;
/** Get */
readonly displayText: string;
/** Get */
readonly value: string;
/** Get or Set */
countWrappedLine: boolean;
/** Get or Set */
exitOnLeftRightKey: ExitOnLeftRightKey;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
autoConvert: boolean;
/** Get or Set */
editMode: EditMode;
/** Get or Set */
exitOnLastChar: boolean;
/** Get or Set */
format: string;
/** Get or Set */
highlightText: boolean;
/** Get or Set */
lengthAsByte: boolean;
/** Get or Set */
maxLength: number;
/** Get or Set */
maxLineCount: number;
/** Get or Set */
IMEReadingStringKanaMode: KanaMode;
/** Get or Set */
scrollBarMode: ScrollBarMode;
/** Get or Set */
scrollBars: ScrollBars;
/** Get or Set */
wordWrap: boolean;
/** Get or Set */
acceptsReturn: boolean;
/** Set */
acceptsAltReturn: boolean;
/** Get or Set */
acceptsTab: boolean;
/** Get or Set */
IMEReadingStringAppend: boolean;
/** Get or Set */
IMEReadingStringEnableAlphabetReadingMapping: boolean;
/** Get or Set */
exitOnEnterKey: ExitKey;
/** Get or Set */
resize: ResizeMode;
/** Get or Set */
hiddenResizeIcon: boolean;
/** Set */
showContextMenu: boolean;
/** Get or Set */
cursorPosition: MultiLineCursorPosition;
setAutoConvert(v: boolean): void;
getAutoConvert(): boolean;
setCountWrappedLine(v: boolean): void;
setFormat(v: string): void;
setHighlightText(v: boolean): void;
setLengthAsByte(v: boolean): void;
setLines(v: string[]): void;
setMaxLength(v: number): void;
setMaxLineCount(v: number): void;
setIMEReadingStringKanaMode(v: KanaMode): void;
setScrollBarMode(v: ScrollBarMode): void;
setScrollBars(v: ScrollBars): void;
setWordWrap(v: boolean): void;
setAcceptsReturn(v: boolean): void;
setAcceptsTab(v: boolean): void;
setIMEReadingStringAppend(v: boolean): void;
getIMEReadingString(): string;
clearIMEReadingString(): void;
setHeight(v: string | number): void;
getValue(): string;
onIMEReadingStringOutput(callBack: (sender: this, args: IReadingStringChangedEventArgs) => void): void;
removeIMEReadingStringOutput(callBack: (sender: this, args: IReadingStringChangedEventArgs) => void): void;
setFocus(): void;
getLines(): string[];
setIMEReadingStringEnableAlphabetReadingMapping(v: boolean): void;
}
export class GcTextBox extends GcInputManBase {
constructor(inputEl: HTMLInputElement, config?: GcTextBoxConfig);
/** Get */
readonly isOverwrite: boolean;
/** Get or Set */
selectedText: string;
/** Get or Set */
selectionLength: number;
/** Get or Set */
text: string;
/** Get or Set */
useStandardPasswordInput: boolean;
/** Get or Set */
useClipboard: boolean;
/** Get or Set */
selectionStart: number;
/** Get */
readonly IMEReadingString: string;
/** Get */
readonly displayText: string;
/** Get */
readonly value: string;
/** Get or Set */
exitOnLeftRightKey: ExitOnLeftRightKey;
/** Get or Set */
watermarkDisplayNullText: string;
/** Get or Set */
watermarkNullText: string;
/** Get or Set */
acceptsCrlf: CrLfMode;
/** Get or Set */
acceptsTabChar: TabCharMode;
/** Get or Set */
autoConvert: boolean;
/** Get or Set */
editMode: EditMode;
/** Get or Set */
ellipsis: EllipsisMode;
/** Get or Set */
ellipsisString: string;
/** Get or Set */
exitOnLastChar: boolean;
/** Get or Set */
format: string;
/** Get or Set */
highlightText: boolean;
/** Get or Set */
lengthAsByte: boolean;
/** Get or Set */
maxLength: number;
/** Get or Set */
passwordChar: string;
/** Get or Set */
IMEReadingStringKanaMode: KanaMode;
/** Get or Set */
useSystemPasswordChar: boolean;
/** Get or Set */
passwordRevelationMode: PasswordRevelationMode;
/** Get or Set */
IMEReadingStringAppend: boolean;
/** Get or Set */
IMEReadingStringEnableAlphabetReadingMapping: boolean;
/** Get or Set */
exitOnEnterKey: ExitKey;
/** Get or Set */
trimMode: TrimMode;
/** Set */
showContextMenu: boolean;
setAcceptsCrlf(v: CrLfMode): void;
setAutoConvert(v: boolean): void;
setEllipsis(v: EllipsisMode): void;
setEllipsisString(v: string): void;
setFormat(v: string): void;
setHighlightText(v: boolean): void;
setLengthAsByte(v: boolean): void;
setMaxLength(v: number): void;
setPasswordChar(v: string): void;
setIMEReadingStringKanaMode(v: KanaMode): void;
setUseSystemPasswordChar(v: boolean): void;
setPasswordRevelationMode(v: PasswordRevelationMode): void;
setIMEReadingStringAppend(v: boolean): void;
getIMEReadingString(): string;
clearIMEReadingString(): void;
getValue(): string;
onIMEReadingStringOutput(callBack: (sender: this, args: IReadingStringChangedEventArgs) => void): void;
removeIMEReadingStringOutput(callBack: (sender: this, args: IReadingStringChangedEventArgs) => void): void;
setIMEReadingStringEnableAlphabetReadingMapping(v: boolean): void;
/**
* Add {@link GcSoftKeyboard} as the dropdown of this control.
* @param dropDownButtonAlignment Indicate the dropdown button position, see {@link DropDownButtonAlignment}.
* @param softKeyboardConfig Indicate {@link GcSoftKeyboard} settings.
* @param asPopup Indicate if dropdown area show as a Popup.
*/
addDropDownSoftKeyboard(dropDownButtonAlignment?: DropDownButtonAlignment, softKeyboardConfig?: GcSoftKeyboardConfig, asPopup?: boolean): void;
}
export class GcControlStateNotifier {
constructor(control: GcInputManBase | GcComboBox | object);
onFail(): void;
onSuccess(): void;
onClear(): void;
destroy(): void;
}
export class GcIconNotifier {
constructor(gcInputManControl: GcInputManBase | GcComboBox | object, iconConfig?: IconConfig);
/** Get or Set */
failMessage: string;
/** Get or Set */
successMessage: string;
/** Get or Set */
direction: IconDirection;
/** Get or Set */
failIconSrc: string;
/** Get or Set */
successIconSrc: string;
setFailMessage(value: string): void;
setSuccessMessage(value: string): void;
setDirection(value: IconDirection): void;
setFailIconSrc(value: string): void;
setSuccessIconSrc(value: string): void;
onFail(): void;
onSuccess(): void;
onClear(): void;
destroy(): void;
refresh(): void;
}
export class GcTipNotifier {
constructor(gcInputManControl: GcInputManBase | GcComboBox | object, tipConfig?: TipConfig);
/** Get or Set */
direction: TipDirection;
/** Get or Set */
position: TipPosition;
/** Get or Set */
template: string;
/** Get or Set */
directionPriority: TipDirection[];
/** Get or Set */
failMessage: string;
/** Get or Set */
style: TipStyle;
/** Get or Set */
successMessage: string;
setDirection(value: TipDirection): void;
setPosition(value: TipPosition): void;
setTemplate(value: string): void;
setDirectionPriority(value: Array<TipDirection>): void;
setFailMessage(value: string): void;
setSuccessMessage(value: string): void;
onFail(): void;
onSuccess(): void;
onClear(): void;
destroy(): void;
refresh(): void;
}
export class GcValidator {
constructor(validateSetting: ValidateSetting);
validate(
controls?: (GcInputManBase | GcComboBox | object) | Array<GcInputManBase | GcComboBox | object> | Array<IExternalValidateResult>,
externalValidateResult?: boolean
): boolean;
enable(controls?: (GcInputManBase | GcComboBox | object) | Array<GcInputManBase | GcComboBox | object>): void;
disable(controls?: (GcInputManBase | GcComboBox | object) | Array<GcInputManBase | GcComboBox | object>): void;
destroy(): void;
addEventListener(eventType: GcValidatorEvent, func: (sender: this, args: GcValidatorEventArgs) => void): void;
removeEventListener(eventType: GcValidatorEvent, func: (sender: this, args: GcValidatorEventArgs) => void): void;
refresh(): void;
static registerValidateRule(
keyword: string,
validateFunc: (control: GcInputManBase | GcComboBox | object, item: ValidateRuleItem) => boolean
): void;
static unRegisterValidateRule(keyword: string): void;
}
export type FormatFunction = (v: number) => string;
export enum ShowLiterals {
Always = 'always',
PostDisplay = 'postdisplay',
PreDisplay = 'predisplay',
}
export enum MaxMinBehavior {
AdjustToMaxMin = 'adjusttomaxmin',
Clear = 'clear',
Restore = 'restore',
CancelInput = 'cancelinput',
Keep = 'keep',
}
export enum TabAction {
Control = 'control',
Field = 'field',
}
export enum ExitOnLeftRightKey {
None = 'none',
Left = 'left',
Right = 'right',
Both = 'both',
}
export enum EditMode {
Insert = 'insert',
Overwrite = 'overwrite',
FixedInsert = 'fixedinsert',
FixedOverwrite = 'fixedoverwrite',
}
export enum CrLfMode {
NoControl = 'nocontrol',
Filter = 'filter',
Cut = 'cut',
}
export enum TabCharMode {
NoControl = 'nocontrol',
Filter = 'filter',
Cut = 'cut',
}
export enum ExitKey {
Enter = 'enter',
ShiftEnter = 'shiftenter',
Both = 'both',
None = 'none',
}
export enum DropDownButtonAlignment {
LeftSide = 'leftside',
RightSide = 'rightside',
}
export enum ClipContent {
IncludeLiterals = 'includeliterals',
ExcludeLiterals = 'excludeliterals',
}
export enum HighlightText {
None = 'none',
Field = 'field',
All = 'all',
}
export enum SpinButtonAlignment {
LeftSide = 'leftside',
RightSide = 'rightside',
}
export enum FocusType {
None = 0,
Click = 1,
ClientEvent = 3,
KeyExit = 4,
Default = 5,
ImeInput = 8,
Left = 9,
Right = 10,
DragDrop = 11,
ClearButton = 12,
}
export enum Key {
BackSpace = 8,
Tab = 9,
Clear = 12,
Return = 13,
Shift = 16,
Control = 17,
Alt = 18,
Pause = 19,
CapsLock = 20,
Escape = 27,
Space = 32,
PageUp = 33,
PageDown = 34,
End = 35,
Home = 36,
Left = 37,
Up = 38,
Right = 39,
Down = 40,
Select = 41,
Print = 42,
Execute = 43,
Insert = 45,
Delete = 46,
Help = 47,
D0 = 48,
D1 = 49,
D2 = 50,
D3 = 51,
D4 = 52,
D5 = 53,
D6 = 54,
D7 = 55,
D8 = 56,
D9 = 57,
A = 65,
B = 66,
C = 67,
D = 68,
E = 69,
F = 70,
G = 71,
H = 72,
I = 73,
J = 74,
K = 75,
L = 76,
M = 77,
N = 78,
O = 79,
P = 80,
Q = 81,
R = 82,
S = 83,
T = 84,
U = 85,
V = 86,
W = 87,
X = 88,
Y = 89,
Z = 90,
NumPad0 = 96,
NumPad1 = 97,
NumPad2 = 98,
NumPad3 = 99,
NumPad4 = 100,
NumPad5 = 101,
NumPad6 = 102,
NumPad7 = 103,
NumPad8 = 104,
NumPad9 = 105,
Multiply = 106,
Add = 107,
Separator = 108,
Subtract = 109,
Decimal = 110,
Divide = 111,
NumLock = 136,
ScrollLock = 137,
F1 = 112,
F2 = 113,
F3 = 114,
F4 = 115,
F5 = 116,
F6 = 117,
F7 = 118,
F8 = 119,
F9 = 120,
F10 = 121,
F11 = 122,
F12 = 123,
F13 = 124,
F14 = 125,
F15 = 126,
F16 = 127,
F17 = 128,
F18 = 129,
F19 = 130,
F20 = 131,
F21 = 132,
F22 = 133,
F23 = 134,
F24 = 135,
}
export enum FloatingLabelType {
None = 'none',
Auto = 'auto',
Always = 'always',
}
export enum FloatingLabelDirection {
Inside = 'inside',
ThroughBorder = 'throughborder',
Outside = 'outside',
}
export enum SpinType {
None = 0x0,
MouseWheel = 0x1,
SpinButton = 0x2,
UpDownKeys = 0x4,
All = 0x7,
}
export enum GcCalculatorKey {
D_0 = '0',
D_1 = '1',
D_2 = '2',
D_3 = '3',
D_4 = '4',
D_5 = '5',
D_6 = '6',
D_7 = '7',
D_8 = '8',
D_9 = '9',
Sign = '+/-',
Dot = '.',
Add = '+',
Sub = '-',
Multiply = '*',
Divide = '/',
Sqrt = 'SQRT',
Percentage = '%',
Fraction = '1/x',
Equal = '=',
MStatus = 'MStatus',
MC = 'MC',
MR = 'MR',
MS = 'MS',
MAdd = 'M+',
BS = 'BS',
CE = 'CE',
C = 'C',
}
export enum CalendarNavigators {
None = 0,
Buttons = 1,
ScrollBar = 2,
Outlook = 3,
}
export enum NavigatorOrientation {
Left = 0,
Top = 1,
Right = 2,
Bottom = 3,
}
export enum CalendarUpdateType {
Data = 1,
All = 2,
}
export enum CalendarYear {
Normal = 0,
Fiscal = 1,
}
export enum CalendarType {
MonthDay = 'monthday',
YearMonth = 'yearmonth',
SmallScaleYear = 'smallscaleyear',
LargeScaleYear = 'largescaleyear',
}
export enum CalendarZoomRange {
Small = 'small',
Large = 'large',
}
export enum Rokuyou {
None = 0x0,
Senshou = 0x1,
Tomobiki = 0x2,
Senbu = 0x4,
Butsumetsu = 0x8,
Taian = 0x10,
Shakkou = 0x20,
All = 0x3f,
}
export enum Months {
Default = 0,
January = 1,
February = 2,
March = 3,
April = 4,
May = 5,
June = 6,
July = 7,
August = 8,
September = 9,
October = 10,
November = 11,
December = 12,
}
export enum DayOfWeek {
NotSet = 0x0,
Sunday = 0x1,
Monday = 0x2,
Tuesday = 0x4,
Wednesday = 0x8,
Thursday = 0x10,
Friday = 0x20,
Saturday = 0x40,
All = 0x7f,
}
export enum CalendarSelectionMode {
One = 0,
MultiSimple = 1,
MultiRich = 2,
}
export enum AllowSelection {
Anyday = 0,
Workday = 1,
Holiday = 2,
}
export enum EmptyRows {
StartEmpty = 0,
AllAtEnd = 1,
}
export enum WeekFlags {
NotSet = 0x0,
First = 0x1,
Second = 0x2,
Third = 0x4,
Fourth = 0x8,
Fifth = 0x10,
Last = 0x20,
All = 0x3f,
}
export enum HolidayOverride {
None = 0,
NextDay = 1,
NextWorkDay = 2,
}
export enum MonthFlags {
NotSet = 0x0,
January = 0x1,
February = 0x2,
March = 0x4,
April = 0x8,
May = 0x10,
June = 0x20,
July = 0x40,
August = 0x80,
September = 0x100,
October = 0x200,
November = 0x400,
December = 0x800,
All = 0xfff,
}
export enum AutoFilter {
None = 'none',
Contains = 'contains',
StartWith = 'startwith',
AmbiguousContains = 'ambiguouscontains',
AmbiguousStartWith = 'ambiguousstartwith',
}
export enum AutoCompleteMode {
None = 'none',
Append = 'append',
SuggestAppend = 'suggestappend',
}
export enum AutoCompleteMatchMode {
StartWith = 'startwith',
AmbiguousStartWith = 'ambiguousstartwith',
}
export enum GcComboBoxEvent {
SelectedChanged = 'selectedchanged',
CheckedChanged = 'checkedchanged',
DropDownClosed = 'dropdownclosed',
DropDownOpened = 'dropdownopened',
TextChanged = 'textchanged',
FocusOut = 'focusout',
KeyDown = 'keydown',
KeyUp = 'keyup',
SpinDown = 'spindown',
SpinUp = 'spinup',
ItemsChanged = 'itemschanged',
ColumnResizeEnd = 'columnresizeend',
ResizeEnd = 'resizeend',
}
export enum MatchingSource {
All = 'all',
Display = 'display',
}
export enum ComboDropDownType {
List = 'list',
Tree = 'tree',
}
export enum GcValidatorEvent {
ValidationFailed = 'validationfailed',
}
export enum ValidateType {
Required = 'required',
OutOfRange = 'outofrange',
EqualToInputLength = 'equaltoinputlength',
LessThanInputLength = 'lessthaninputlength',
LessThanOrEqualToInputLength = 'lessthanorequaltoinputlength',
GreaterThanInputLength = 'greaterthaninputlength',
GreaterThanOrEqualToInputLength = 'greaterthanorequaltoinputlength',
BetweenMinAndMaxLength = 'betweenminandmaxlength',
BetweenOrEqualToMinAndMaxLength = 'betweenorequaltominandmaxlength',
MatchControl = 'matchcontrol',
External = 'external',
}
export enum ValidateWhen {
LostFocus = 'lostfocus',
Typing = 'typing',
Manual = 'manual',
}
export enum IconDirection {
Inside = 'inside',
Outside = 'outside',
}
export enum TipPosition {
Start = 'start',
Balanced = 'balanced',
End = 'end',
}
export enum TipDirection {
Top = 'top',
Left = 'left',
Right = 'right',
Bottom = 'bottom',
}
export enum TipStyle {
BallonTip = 'ballontip',
FlatPanel = 'flatpanel',
Text = 'text',
}
export enum ValidateMode {
ValidateEx = 'validateex',
Validate = 'validate',
ValidateNone = 'validatenone',
}
export enum DateCursorPosition {
Default = 0,
Era = 1,
Year = 2,
Month = 3,
Day = 4,
AMPM = 5,
Hour = 6,
Minute = 7,
Second = 8,
}
export enum Hour12Mode {
Hour0As12 = 'hour0as12',
Hour12As0 = 'hour12as0',
}
export enum DateDropDownType {
Picker = 'picker',
Calendar = 'calendar',
}
export enum PickerType {
DateTime = 'datetime',
Date = 'date',
Time = 'time',
}
export enum Interval {
Default = 1,
IntervalOf5 = 5,
IntervalOf10 = 10,
IntervalOf15 = 15,
IntervalOf20 = 20,
IntervalOf30 = 30,
}
export enum GcDateTimePickerEvent {
SelectedDateChanged = 'selecteddatechanged',
}
export enum DropDownAnimationType {
None = 'none',
SlideDown = 'slidedown',
SlideUp = 'slideup',
Popup = 'popup',
Expand = 'expand',
}
export enum StorageMode {
LocalStorage = 'localstorage',
SessionStorage = 'sessionstorage',
}
export enum SaveMode {
SaveOnRefresh = 'saveonrefresh',
SaveOnSubmit = 'saveonsubmit',
}
export enum FunctionKey {
None = 0x0,
PageUp = 0x1,
PageDown = 0x2,
Home = 0x4,
End = 0x8,
F1 = 0x10,
F2 = 0x20,
F3 = 0x40,
F4 = 0x80,
F5 = 0x100,
F6 = 0x200,
F7 = 0x400,
F8 = 0x800,
F9 = 0x1000,
F10 = 0x2000,
F11 = 0x4000,
F12 = 0x8000,
Shift = 0x10000,
Ctrl = 0x20000,
Alt = 0x40000,
}
export enum CombinationKeyDisplayMode {
Always = 'always',
Dynamic = 'dynamic',
}
export enum DisplayStyle {
None = 'none',
Text = 'text',
Image = 'image',
ImageAndText = 'imageandtext',
}
export enum ImagePosition {
Top = 'top',
Bottom = 'bottom',
Left = 'left',
Right = 'right',
}
export enum Alignment {
NotSet = 'notset',
TopLeft = 'top-left',
TopCenter = 'top-center',
TopRight = 'top-right',
MiddleLeft = 'middle-left',
MiddleCenter = 'middle-center',
MiddleRight = 'middle-right',
BottomLeft = 'bottom-left',
BottomCenter = 'bottom-center',
BottomRight = 'bottom-right',
BaselineLeft = 'baseline-left',
BaselineCenter = 'baseline-center',
BaselineRight = 'baseline-right',
}
export enum FilterComparator {
Contains = 'contains',
NotContains = 'notcontains',
Equal = 'equal',
NotEqual = 'notequal',
EndWith = 'endwith',
StartWith = 'startwith',
AmbiguousContains = 'ambiguouscontains',
AmbiguousNotContains = 'ambiguousnotcontains',
AmbiguousEqual = 'ambiguousequal',
AmbiguousNotEqual = 'ambiguousnotequal',
AmbiguousEndWith = 'ambiguousendwith',
AmbiguousStartWith = 'ambiguousstartwith',
GreaterThan = 'greaterthan',
GreaterThanOrEqual = 'greaterthanorequal',
LessThan = 'lessthan',
LessThanOrEqual = 'lessthanorequal',
Between = 'between',
NotBetween = 'notbetween',
}
export enum DateCompareUnit {
Second = 1,
Minute = 2,
Hour = 4,
Day = 8,
Month = 16,
Year = 32,
Time = 7,
Date = 56,
DateTime = 63,
}
export enum ScrollBars {
None = 'none',
Horizontal = 'horizontal',
Vertical = 'vertical',
Both = 'both',
}
export enum ListBoxSelectionMode {
Single = 'single',
Multiple = 'multiple',
MultipleExt = 'multipleExt',
}
export enum GcListBoxEvent {
CheckedChanged = 'checkedchanged',
SelectedChanged = 'selectedchanged',
FocusedChanged = 'focusedchanged',
ItemClick = 'itemclick',
LoadComplete = 'loadcomplete',
ItemsChanged = 'itemschanged',
ColumnResizeEnd = 'columnresizeend',
ResizeEnd = 'resizeend',
Dropping = 'dropping',
Dropped = 'dropped',
}
export enum ListBoxDragMode {
None = 'none',
Single = 'single',
Multiple = 'multiple',
}
export enum ListBoxDragSource {
Selected = 'selected',
Checked = 'checked',
}
export enum FilterOperatorType {
Boolean = 'boolean',
Number = 'number',
String = 'string',
Date = 'date',
}
export enum ToastPosition {
TopLeft = 'topleft',
TopCenter = 'topcenter',
TopRight = 'topright',
BottomLeft = 'bottomleft',
BottomCenter = 'bottomcenter',
BottomRight = 'bottomright',
}
export enum DecimalMode {
Cut = 'cut',
Filter = 'filter',
}
export enum SliderPosition {
Left = 'left',
BottomBorder = 'bottomborder',
Right = 'right',
}
export enum ClearModeAction {
Zero = 'zero',
Null = 'null',
}
export enum ValueSign {
NoControl = 'nocontrol',
Positive = 'positive',
Negative = 'negative',
}
export enum GcShortcutEvent {
PreAction = 'preaction',
PostAction = 'postaction',
}
export enum GcShortcutAction {
PreviousControl = 'previouscontrol',
NextControl = 'nextcontrol',
Clear = 'clear',
DropDown = 'dropdown',
SpinDown = 'spindown',
SpinUp = 'spinup',
PreviousField = 'previousfield',
NextField = 'nextfield',
PreviousFieldControl = 'previousfieldcontrol',
NextFieldControl = 'nextfieldcontrol',
ThreeZero = 'threezero',
Now = 'now',
}
export enum GcShortcutKey {
BackSpace = 8,
Tab = 9,
Clear = 12,
Return = 13,
Shift = 16,
Ctrl = 17,
Alt = 18,
Pause = 19,
CapsLock = 20,
Escape = 27,
Space = 32,
PageUp = 33,
PageDown = 34,
End = 35,
Home = 36,
Left = 37,
Up = 38,
Right = 39,
Down = 40,
Select = 41,
Print = 42,
Execute = 43,
Insert = 45,
Delete = 46,
Help = 47,
D0 = 48,
D1 = 49,
D2 = 50,
D3 = 51,
D4 = 52,
D5 = 53,
D6 = 54,
D7 = 55,
D8 = 56,
D9 = 57,
A = 65,
B = 66,
C = 67,
D = 68,
E = 69,
F = 70,
G = 71,
H = 72,
I = 73,
J = 74,
K = 75,
L = 76,
M = 77,
N = 78,
O = 79,
P = 80,
Q = 81,
R = 82,
S = 83,
T = 84,
U = 85,
V = 86,
W = 87,
X = 88,
Y = 89,
Z = 90,
NumPad0 = 96,
NumPad1 = 97,
NumPad2 = 98,
NumPad3 = 99,
NumPad4 = 100,
NumPad5 = 101,
NumPad6 = 102,
NumPad7 = 103,
NumPad8 = 104,
NumPad9 = 105,
Multiply = 106,
Add = 107,
Separator = 108,
Subtract = 109,
Decimal = 110,
Divide = 111,
NumLock = 136,
ScrollLock = 137,
F1 = 112,
F2 = 113,
F3 = 114,
F4 = 115,
F5 = 116,
F6 = 117,
F7 = 118,
F8 = 119,
F9 = 120,
F10 = 121,
F11 = 122,
F12 = 123,
F13 = 124,
F14 = 125,
F15 = 126,
F16 = 127,
F17 = 128,
F18 = 129,
F19 = 130,
F20 = 131,
F21 = 132,
F22 = 133,
F23 = 134,
F24 = 135,
}
export enum SliderDirection {
Horizontal = 'horizontal',
Vertical = 'vertical',
}
export enum SliderTooltipPosition {
Top = 'top',
Bottom = 'bottom',
}
export enum SliderTooltipShowMode {
None = 'none',
Always = 'always',
Hover = 'hover',
}
export enum SliderValueChangeMode {
ThumbMove = 'thumbmove',
ThumbRelease = 'thumbrelease',
}
/**
* Indicate different kind of keys which could be displayed in {@link GcSoftKeyboard}.
*/
export enum DisplayType {
Numeric = 0x1,
Symbol = 0x2,
Alphabet = 0x4,
All = 0x7,
}
/**
* Indicate different security level for {@link GcSoftKeyboard}.
*/
export enum SecurityLevel {
/**
* If set SecurityLevel to low, means dom node will expose key value, if there's some Trojan in server site, clicked data maybe expose to hackers.
* Although this level has security risk, but this only happened when there's security flaw in users site.
*/
Low = 'low',
/**
* If set SecurityLevel to high, each button will be created by canvas, and there's no value info in dom node. It's hard to get any useful info from dom node.
*/
High = 'high',
}
/**
* Indicate different key type in {@link GcSoftKeyboard}.
*/
export enum KeyType {
NumericKey = 'numerickey',
SymbolKey = 'symbolkey',
AlphabetKey = 'alphabetkey',
FunctionKey = 'functionkey',
}
/**
* Indicate all {@link GcSoftKeyboard} events.
*/
export enum GcSoftKeyboardEvent {
KeyPress = 'keypress',
Open = 'open',
Close = 'close',
}
export enum GcTagBoxEvent {
FocusIn = 'focusin',
FocusOut = 'focusout',
InsertTag = 'inserttag',
RemoveTag = 'removetag',
DropDownOpened = 'dropdownopened',
DropDownClosed = 'dropdownclosed',
ValueChanged = 'valuechanged',
}
export enum GcTagBoxDropDownAlignmentMode {
AlignWithEditor = 'alignwitheditor',
AlignWithCaret = 'alignwithcaret',
}
export enum TagBoxDropDownType {
List = 'list',
Tree = 'tree',
}
export enum ScrollBarMode {
Automatic = 'automatic',
Fixed = 'fixed',
}
export enum EllipsisMode {
None = 'none',
EllipsisEnd = 'ellipsisend',
EllipsisPath = 'ellipsispath',
}
export enum KanaMode {
KatakanaHalf = 'katakanahalf',
Katakana = 'katakana',
Hiragana = 'hiragana',
}
export enum PasswordRevelationMode {
None = 'none',
ShowEyeButton = 'showeyebutton',
ShowLastTypedChar = 'showlasttypedchar',
}
export enum OutputMode {
Append = 'append',
Replace = 'replace',
}
export enum MultiLineCursorPosition {
None = 'none',
Start = 'start',
End = 'end',
}
export enum ResizeMode {
None = 'none',
Both = 'both',
Vertical = 'vertical',
Horizontal = 'horizontal',
}
export enum TrimMode {
None = 'none',
Start = 'start',
End = 'end',
Both = 'both',
}
export enum ValueConsistsOf {
All = 'all',
NonLeafPriority = 'nonleafpriority',
LeafPriority = 'leafpriority',
}
export enum TreeViewNodeType {
All = 'all',
Leaf = 'leaf',
}
export enum AppearanceStyle {
Classic = 'classic',
Modern = 'modern',
}
export enum TagBoxDisplayMode {
Multiline = 'multiline',
Singleline = 'singleline',
}
export enum GcTagImageAlignment {
LeftSide = 'leftside',
RightSide = 'rightside',
}
export enum Culture {
EN = 'en',
CN = 'cn',
JA = 'ja',
}
export interface GcInputManBaseConfig {
visible?: boolean;
enabled?: boolean;
readOnly?: boolean;
width?: number | string;
height?: number | string;
minWidth?: number | string;
minHeight?: number | string;
maxWidth?: number | string;
maxHeight?: number | string;
exitOnLeftRightKey?: ExitOnLeftRightKey | null;
editMode?: EditMode | null;
watermarkDisplayNullText?: string | null;
watermarkNullText?: string | null;
useClipboard?: boolean;
exitOnEnterKey?: ExitKey | null;
container?: HTMLElement | null;
autoDropDown?: boolean | null;
tabIndex?: number;
showClearButton?: boolean;
showHelpButton?: boolean;
showCopyButton?: boolean;
helpContent?: string | null;
copyMessage?: string | null;
copiedMessage?: string | null;
autoScale?: boolean;
minScaleFactor?: number;
floatingLabelText?: string;
floatingLabelType?: FloatingLabelType;
floatingLabelDirection?: FloatingLabelDirection;
fontSize?: number | string;
}
export interface CustomEventArgs {
Cancel: boolean;
StopPropagation?: boolean;
PreventDefault?: boolean;
}
export interface GcCalculatorConfig {
showOutput?: boolean;
visible?: boolean;
enabled?: boolean;
value?: number | null;
buttonText?: object;
}
export interface GcCalendarConfig extends CalendarBaseConfig {
visible?: boolean;
maxSelectionCount?: number | null;
selectionMode?: CalendarSelectionMode | null;
selectedDate?: Date | null;
enabled?: boolean;
weekTitleSelect?: boolean;
weekNumberSelect?: boolean;
focusDate?: Date | null;
}
export interface CalendarBaseConfig {
maxDate?: Date | null;
minDate?: Date | null;
allowSelection?: AllowSelection | null;
emptyRows?: EmptyRows | null;
firstDayOfWeek?: DayOfWeek | null;
firstFiscalMonth?: Months | null;
firstMonthInView?: Months | null;
yearMonthFormat?: string | null;
headerFormat?: string | null;
showZoomButton?: boolean;
showRokuyou?: Rokuyou | null;
showHeader?: boolean;
showToday?: boolean;
showWeekNumber?: boolean;
showTrailing?: boolean;
calendarYear?: CalendarYear | null;
calendarDimensions?: Dimensions | null;
showNavigator?: CalendarNavigators | null;
navigatorOrientation?: NavigatorOrientation | null;
overrideTipText?: string | null;
calendarType?: CalendarType | null;
scrollRate?: number | null;
calendarZoomRange?: CalendarZoomRange | CalendarType[] | null;
autoSwitch?: boolean;
showAnimation?: boolean;
width?: number | string | null;
height?: number | string | null;
allowResize?: boolean;
minWidth?: number | string;
maxWidth?: number | string;
minHeight?: number | string;
maxHeight?: number | string;
}
export interface Dimensions {
width: number;
height: number;
}
export interface IComboBoxDropDownTree {
readonly imageMemberPath: string;
readonly childrenMemberPath: string;
readonly expandedMemberPath: string;
readonly selectableNodeType: TreeViewNodeType;
readonly flat: boolean;
valueConsistsOf: ValueConsistsOf;
}
export interface ComboBoxConfig extends ListConfig, ComboBoxEditorConfig {
showDropDownButton?: boolean;
dropDownButtonPosition?: DropDownButtonAlignment | null;
showSpinButton?: boolean;
spinButtonPosition?: SpinButtonAlignment | null;
matchingSource?: MatchingSource;
isEditable?: boolean;
autoSelect?: boolean;
dropDownWidth?: number | 'auto' | null;
dropDownHeight?: number | null;
autoFilter?: AutoFilter | null;
minPrefixLength?: number | null;
isMultiSelect?: boolean;
allowDropDownResize?: boolean;
dropDownOverflow?: ScrollBars | null;
emptyTemplate?: string;
spinWheel?: boolean;
multipleItemSeparator?: string;
autoCompleteMode?: AutoCompleteMode;
autoCompleteMatchMode?: AutoCompleteMatchMode;
checkBySpace?: boolean;
dropDownType?: ComboDropDownType | null;
dropDownTreeConfig?: ComboBoxDropDownTreeConfig;
}
export interface ComboBoxDropDownTreeConfig {
imageMemberPath?: string | null;
childrenMemberPath?: string | null;
expandedMemberPath?: string | null;
selectableNodeType?: TreeViewNodeType;
flat?: boolean;
valueConsistsOf?: ValueConsistsOf;
itemTemplate?: string | string[] | ((item: object) => HTMLElement) | null;
generatingItem?: (args: ITreeViewItemGeneratingArgs) => void;
selectTemplate?: (args: ITreeViewTemplateSelectArgs) => string;
formatItem?: (item: object) => void;
load?: (context: ITreeViewLoadContext) => void | null;
}
export interface ComboBoxEditorConfig {
exitOnLeftRightKey?: ExitOnLeftRightKey | null;
editMode?: EditMode | null;
watermarkDisplayNullText?: string | null;
highlightText?: boolean | null;
watermarkNullText?: string | null;
acceptsCrlf?: CrLfMode | null;
acceptsTabChar?: TabCharMode;
useClipboard?: boolean;
exitOnEnterKey?: ExitKey | null;
ellipsis?: EllipsisMode | null;
ellipsisString?: string | null;
enabled?: boolean;
visible?: boolean;
readOnly?: boolean;
container?: HTMLElement | null;
autoDropDown?: boolean;
showClearButton?: boolean;
autoScale?: boolean;
minScaleFactor?: number | null;
tabIndex?: number | null;
showCopyButton?: boolean;
showHelpButton?: boolean;
helpContent?: string | null;
copyMessage?: string | null;
copiedMessage?: string | null;
floatingLabelText?: string | null;
floatingLabelType?: FloatingLabelType | null;
floatingLabelDirection?: FloatingLabelDirection | null;
width?: number | string;
height?: number | string;
minWidth?: number | string;
minHeight?: number | string;
maxWidth?: number | string;
maxHeight?: number | string;
fontSize?: number | string;
}
export interface ValidateSetting {
items: ValidateItem[];
defaultNotify?: NotifySetting | NotifySettings;
}
export interface ValidateItem {
control: GcInputManBase | GcComboBox | object;
ruleSet: ValidateRuleItem[];
validateWhen?: ValidateWhen;
notify?: NotifySetting | NotifySettings | null;
}
export interface ValidateRuleItem {
rule: string | ValidateType | ((control: object) => boolean);
inputLength?: number;
inputMaxLength?: number;
inputMinLength?: number;
matchControl?: GcInputManBase | object;
successMessage?: string | ((control: object, context: ValidateRuleItem) => string);
failMessage?: string | ((control: object, context: ValidateRuleItem) => string);
[property: string]: number | boolean | string | object | undefined | null;
}
export interface NotifySettings {
fail?: NotifySetting | null;
success?: NotifySetting | null;
}
export interface NotifySetting {
tip?: boolean | TipConfig | null;
icon?: boolean | IconConfig | null;
toast?: boolean | ToastNotifyConfig;
controlState?: boolean;
}
export interface GcValidatorEventArgs {
control: GcInputManBase | GcComboBox | object;
context: ValidateRuleItem;
}
export interface TipConfig {
direction?: TipDirection | null;
position?: TipPosition | null;
directionPriority?: TipDirection[] | null;
template?: string | null;
failMessage?: string | null;
successMessage?: string | null;
style?: TipStyle | null;
}
export interface IconConfig {
direction?: string | null;
failIconSrc?: string | null;
successIconSrc?: string | null;
failMessage?: string | null;
successMessage?: string | null;
}
export interface ToastNotifyConfig {
showClose?: boolean;
className?: string;
position?: ToastPosition;
duration?: number;
showProgress?: boolean;
pauseOnHover?: boolean;
title?: string;
template?: (context: ToastTemplateContext) => HTMLElement;
}
export interface ToastTemplateContext {
close(): void;
message: string;
control: GcInputManBase | GcComboBox | object;
ruleItem: ValidateRuleItem;
}
export interface IExternalValidateResult {
control: GcInputManBase | object;
result: boolean;
}
export interface ICustomEra {
name: string;
abbreviation: string;
shortcuts: string;
symbol: string;
startDate: string;
}
export interface GcDateTimeConfig extends GcInputManBaseConfig {
text?: string | null;
maxDate?: Date | string | null;
minDate?: Date | string | null;
formatPattern?: string | null;
spinIncrement?: number | null;
spinOnKeys?: boolean;
spinWheel?: boolean;
spinWrap?: boolean;
allowSpin?: boolean | SpinType;
displayFormatPattern?: string | null;
watermarkEmptyEraText?: string | null;
promptChar?: string | null;
AMDesignator?: string | null;
PMDesignator?: string | null;
twoDigitYearMax?: number | null;
hour12Mode?: Hour12Mode | null;
tabAction?: TabAction | null;
maxMinBehavior?: MaxMinBehavior | null;
midnightAs24?: boolean;
showLiterals?: ShowLiterals | null;
adjustValueOnFocus?: boolean;
useTwoDigitYearMax?: boolean;
validateMode?: ValidateMode | null;
clipContent?: ClipContent | null;
value?: Date | string;
watermarkDisplayEmptyEraText?: string | null;
showSpinButton?: boolean;
spinButtonPosition?: SpinButtonAlignment | null;
showDropDownButton?: boolean;
dropDownButtonAlignment?: DropDownButtonAlignment | null;
dropDownConfig?: GcDateTimeDropDownConfig | null;
exitOnLastChar?: boolean;
highlightText?: HighlightText | null;
autoConvert?: boolean;
acceptsCrlf?: CrLfMode | null;
}
export interface GcDateTimeDropDownConfig extends GcDateTimeCalendarConfig, GcDateTimeDropDownPickerConfig {
minDate?: Date | null;
maxDate?: Date | null;
dropDownType?: DateDropDownType | null;
}
export interface GcDateTimeCalendarConfig extends CalendarBaseConfig {
defaultDate?: Date | null;
}
export interface GcDateTimeDropDownPickerConfig extends PickerConfig {
defaultDate?: Date | null;
}
export interface GcDateTimePickerEventArgs {
oldValue?: Date;
newValue: Date;
}
export interface PickerConfig {
minDate?: Date | string | number | null;
maxDate?: Date | string | number | null;
type?: PickerType | null;
minuteInterval?: Interval | null;
secondsInterval?: Interval | null;
hasSeconds?: boolean;
selectedValue?: Date | null;
yearFormat?: (curDate: Date) => string;
monthFormat?: (curDate: Date) => string;
dayFormat?: (curDate: Date) => string;
}
export interface IDropDownContainer {
width: string | number;
setWidth(v: string | number): void;
height: string | number;
setHeight(v: string | number): void;
element: HTMLElement;
getElement(): HTMLElement;
innerElement: HTMLElement;
setInnerElement(el: HTMLElement): void;
opened: boolean;
isOpened(): boolean;
closed: boolean;
isClosed(): boolean;
animationType: DropDownAnimationType;
toggleOpen(showAnimation?: boolean): void;
close(showAnimation?: boolean): void;
open(showAnimation?: boolean): void;
onOpening(f: (sender: this, args: CancelEventArgs) => void): void;
onOpen(f: (sender: this) => void): void;
onClosing(f: (sender: this, args: CancelEventArgs) => void): void;
onClose(f: (sender: this) => void): void;
removeOpen(f: (sender: this) => void): void;
removeOpening(f: (sender: this, args: CancelEventArgs) => void): void;
removeClose(f: (sender: this) => void): void;
removeClosing(f: (sender: this, args: CancelEventArgs) => void): void;
updateDropDownPosition(): void;
dispose(): void;
}
export interface CancelEventArgs {
cancel: boolean;
}
export interface IGcDropDownSliderConfig {
min?: number;
max?: number;
step?: number | null;
marks?: number[];
valueChangeMode?: SliderValueChangeMode;
direction?: SliderDirection;
showMarkLabel?: boolean;
markLabelFormat?: FormatFunction;
markLabelPosition?: SliderTooltipPosition;
tooltipShowMode?: SliderTooltipShowMode;
tooltipFormat?: FormatFunction;
tooltipPosition?: SliderTooltipPosition;
showMarkTip?: boolean;
markTipFormat?: FormatFunction;
keyStep?: number;
width?: number | string;
height?: number | string;
}
export interface IDropDownOwner {
getValue(): string | number | Date | null | undefined;
syncValueFromDropDown(v: string | number | Date | null | undefined): void;
performKeyDown(keyCode: number): void;
performKeyPress(char: string, keyCode: number): void;
getOriginalInputElement(): HTMLInputElement | HTMLTextAreaElement;
getUIInputElement(): HTMLInputElement | HTMLTextAreaElement;
getLayoutElement(): HTMLElement;
getReadOnly(): boolean;
paste(): void;
cut(): void;
copy(): void;
delete(): void;
undo(): void;
canUndo(): boolean;
getSelectionLength(): number;
getPasswordMode(): boolean;
getUseClipboard(): boolean;
}
export interface IDropDownSliderOwner extends IDropDownOwner {
onInput(callBack: Function): any;
removeInput(f: Function): any;
readOnly: boolean;
enabled: boolean;
onEnabledReadOnlyChanged(callback: () => void): any;
syncValueFromSlider(v: number): any;
getSliderRange(): [number, number];
}
export interface GcFormPersistenceConfig {
id?: string | null;
storageMode?: StorageMode | null;
saveMode?: SaveMode | null;
}
export interface IThirdpartyEditor {
/**
* Indicate if skip current element, if skip, this element will be exclude from FormPersistence.
* @param element an Html element from host element.
*/
skip(element: HTMLElement): boolean;
/**
* Indicate if this element is a thirdparty control, if yes, return name as storage key.
* @param element an Html element from host element.
*/
checker(element: HTMLElement): string | null;
/**
* Save thirdparty control's value to storage.
* @param context include current GcFormPersistence, current element and element name info.
*/
save(context: ElementContext): void;
/**
* Set value to thirdparty control.
* @param context include current GcFormPersistence, current element and element name info.
*/
restore(context: ElementContext): void;
}
export interface ElementContext {
formPersistence: GcFormPersistence;
element: HTMLElement;
name: string;
}
export interface FunctionKeyConfig {
keyRepeat?: boolean;
handleMouse?: boolean;
visible?: boolean;
enabled?: boolean;
showTip?: boolean;
combinationKeyDisplayMode?: CombinationKeyDisplayMode | null;
functionKeys?: (FunctionKeyInfo | FunctionKey)[];
onActived?: ActivateCallBack;
}
export interface ActivateCallBack {
(s: GcFunctionKey, e: KeyActivateArgs): void;
}
export interface FunctionKeyInfo {
key: FunctionKey;
description?: string;
tipText?: string;
displayStyle?: DisplayStyle;
imagePosition?: ImagePosition;
}
export interface KeyActivateArgs extends FunctionKeyInfo, ModifierKeyInfo {
cancel: boolean;
keyCode: number;
}
export interface ModifierKeyInfo {
shiftKey: boolean;
ctrlKey: boolean;
altKey: boolean;
}
export interface ListConfig {
visibleItems?: number | null;
itemHeight?: number | null;
colHeaderHeight?: number | null;
items?: object[] | string[] | null;
columns?: ColumnConfig[] | null;
showHeader?: boolean;
valueMemberPath?: string | null;
displayMemberPath?: string | null;
checkOnClick?: boolean;
itemTemplate?: string | string[] | null;
headerTemplate?: string | null;
footerTemplate?: string | null;
load?: (context: ILoadContext) => void;
pageSize?: number | null;
virtualMode?: boolean | null;
generatingItem?: (args: IItemGeneratingArgs) => void;
selectTemplate?: (args: ITemplateSelectArgs) => string;
formatItem?: (args: IItemArgs) => void;
allowColumnResize?: boolean;
showTip?: boolean;
multiColumn?: boolean;
}
export interface ColumnConfig {
name: string;
label?: string | null;
width?: number | 'auto' | string | null;
isValuePath?: boolean;
visible?: boolean;
clickSort?: boolean;
contentAlignment?: Alignment | null;
headerAlignment?: Alignment | null;
showTip?: boolean;
}
export interface IItemGeneratingArgs extends IItemArgs {
item: HTMLElement;
}
export interface ITemplateSelectArgs extends IItemArgs {
template: string[];
}
export interface ILoadContext {
pageNumber: number;
pageSize: number;
lastItem: object;
filter: FilterInfo[] | FilterFunc;
sort: SortInfo | SortFunc;
success(items: object[]): void;
failed(err: string): void;
}
export interface FilterFunc {
(value: object): boolean;
}
export interface SortFunc {
(left: { item: object; index: number }, right: { item: object; index: number }): number;
}
export interface SortInfo {
name: string;
isAsc: boolean;
}
export interface FilterInfo {
name: string;
comparator: FilterComparator;
filterString?: string;
operatorType?: FilterOperatorType;
params?: any | any[];
}
export interface AutofitInfo {
name: string;
autofit: boolean;
minWidth?: number | string;
maxWidth?: number | string;
}
export interface DropEventArgs {
source: GcListBox;
target: GcListBox;
insertIndex: number;
dataIndexes: number[];
cancel: boolean;
}
export interface IItemArgs {
index: number;
itemObject: object;
}
export interface ListBoxConfig extends ListConfig {
width?: number | 'auto' | null;
height?: number | null;
showCheckBox?: boolean;
selectionMode?: ListBoxSelectionMode | null;
allowResize?: boolean;
overflow?: ScrollBars | null;
visible?: boolean;
enabled?: boolean;
dragDrop?: boolean;
dragSource?: ListBoxDragSource;
findStringFilterComparator?: FilterComparator;
}
export interface GcMaskConfig extends GcInputManBaseConfig {
autoConvert?: boolean;
value?: string | null;
formatPattern?: string | null;
promptChar?: string | null;
showLiterals?: ShowLiterals | null;
tabAction?: TabAction | null;
text?: string | null;
clipContent?: ClipContent | null;
showSpinButton?: boolean;
spinButtonPosition?: SpinButtonAlignment | null;
allowSpin?: boolean | SpinType;
spinWheel?: boolean;
spinOnKeys?: boolean;
exitOnLastChar?: boolean;
highlightText?: HighlightText | null;
acceptsTabChar?: TabCharMode;
acceptsCrlf?: CrLfMode | null;
}
export interface InputChangingEventArgs {
Result: string;
Cancel: boolean;
}
export interface GcNumberConfig extends GcInputManBaseConfig {
value?: number | string | null;
text?: string | null;
watermarkZeroText?: string | null;
formatDigit?: string | null;
displayPositivePrefix?: string | null;
displayFormatDigit?: string | null;
maxValue?: number | string | null;
minValue?: number | string | null;
positivePrefix?: string | null;
positiveSuffix?: string | null;
displayPositiveSuffix?: string | null;
negativePrefix?: string | null;
displayNegativePrefix?: string | null;
negativeSuffix?: string | null;
displayNegativeSuffix?: string | null;
valueSign?: ValueSign | null;
adjustValueOnFocus?: boolean;
allowDeleteToNull?: boolean;
clearAction?: ClearModeAction | null;
acceptsDecimal?: DecimalMode | null;
currencySymbol?: string | null;
decimalPoint?: string | null;
maxMinBehavior?: MaxMinBehavior | null;
separator?: string | null;
watermarkDisplayZeroText?: string | null;
showSpinButton?: boolean;
spinButtonPosition?: SpinButtonAlignment | null;
showNumericPad?: boolean;
numericPadPosition?: DropDownButtonAlignment | null;
showCalculatorAsDropDown?: boolean;
showCalculatorAsPopup?: boolean;
calculatorButtonPosition?: DropDownButtonAlignment | null;
showDropDownSlider?: boolean;
sliderButtonPosition?: DropDownButtonAlignment | null;
dropDownConfig?: GcCalculatorConfig | IGcDropDownSliderConfig | null;
highlightText?: boolean;
allowSpin?: boolean | SpinType;
spinOnKeys?: boolean;
spinWheel?: boolean;
spinWrap?: boolean;
spinIncrement?: number;
clipContent?: ClipContent | null;
sliderConfig?: INumberSliderConfig;
spinFromZeroWhenValueIsNull?: boolean;
autoConvert?: boolean;
acceptsCrlf?: CrLfMode | null;
}
export interface INumberSliderConfig {
visible?: boolean;
step?: number | null;
marks?: number[];
valueChangeMode?: SliderValueChangeMode;
showMarkLabel?: boolean;
markLabelFormat?: FormatFunction;
markLabelPosition?: SliderTooltipPosition;
showMarkTip?: boolean;
markTipFormat?: FormatFunction;
position?: SliderPosition;
tooltipShowMode?: SliderTooltipShowMode;
tooltipFormat?: FormatFunction;
tooltipPosition?: SliderTooltipPosition;
replaceEditor?: boolean;
direction?: SliderDirection;
keyboard?: boolean;
keyStep?: number;
}
export interface INumberSlider {
visible: boolean;
step: number | null;
marks: number[];
valueChangeMode: SliderValueChangeMode;
showMarkLabel: boolean;
markLabelFormat: FormatFunction;
markLabelPosition: SliderTooltipPosition;
showMarkTip: boolean;
markTipFormat: FormatFunction;
position: SliderPosition;
tooltipShowMode: SliderTooltipShowMode;
tooltipFormat: FormatFunction;
tooltipPosition: SliderTooltipPosition;
replaceEditor: boolean;
direction: SliderDirection;
keyboard: boolean;
keyStep: number;
}
export interface ShortcutKeyActionArgs {
key: GcShortcutKey;
shift?: boolean;
ctrl?: boolean;
alt?: boolean;
target?: HTMLElement | Window | Document | GcInputManBase | GcComboBox | GcListBox | GcCalculator | GcDateTimePicker;
action?: IAction | GcShortcutAction;
blockMessage?: boolean;
}
export interface RemoveShortcutKeyActionArgs {
key?: GcShortcutKey;
shift?: boolean;
ctrl?: boolean;
alt?: boolean;
target?: HTMLElement | Window | Document | GcInputManBase | GcComboBox | GcListBox | GcCalculator | GcDateTimePicker;
action?: IAction | GcShortcutAction;
}
export interface PreActionEventArgs extends ShortcutKeyActionArgs {
cancel: boolean;
evt: KeyboardEvent;
}
export interface PostActionEventArgs extends ShortcutKeyActionArgs {
evt: KeyboardEvent;
}
export interface IActionArgs {
key: GcShortcutKey;
shift: boolean;
ctrl: boolean;
alt: boolean;
target: HTMLElement | Window | Document | GcInputManBase | GcComboBox | GcListBox | GcCalculator | GcDateTimePicker;
evt: KeyboardEvent;
}
export interface IAction {
(args: IActionArgs): void;
}
export interface GcSoftKeyboardConfig {
randomDisplay?: boolean;
hideButtonWhenMouseOn?: boolean;
displayType?: DisplayType | null;
showSecurityOptions?: boolean;
securityLevel?: SecurityLevel | null;
qwertyLayout?: boolean;
showCapitalLetters?: boolean;
target?: HTMLInputElement;
enabled?: boolean;
}
export interface ISoftKeyBoardKey {
keyType: KeyType;
text: string;
value: string;
template: HTMLElement;
originalKeyOrder: number;
hardwareKeyboardOrder: number;
}
export interface IKeyCollection {
/**
* Add one key or several keys to current key collection.
* @param key could be a string or string[] or a softKeyboard object or softKeyboard array.
* @param index which position this key need to add.
*/
addKey(key: string | string[] | ISoftKeyBoardKey | ISoftKeyBoardKey[], index?: number): any;
/**
* Remove one key or several keys from current key collection.
* @param key could be a string or string[] or a softKeyboard object or softKeyboard array.
*/
removeKey(key: string | string[] | ISoftKeyBoardKey | ISoftKeyBoardKey[]): any;
/**
* Find a key from current key collection.
* @param name should be the name or value of the key.
*/
findKey(name: string): ISoftKeyBoardKey;
/**
* get all keys from current key collection.
*/
keys: ISoftKeyBoardKey[];
}
export interface ITagBoxDropDownTree {
readonly imageMemberPath: string;
readonly childrenMemberPath: string;
readonly expandedMemberPath: string;
readonly selectableNodeType: TreeViewNodeType;
readonly flat: boolean;
readonly virtualMode: boolean;
checkOnClick: boolean;
checkBySpace: boolean;
valueConsistsOf: ValueConsistsOf;
}
export interface TagBoxConfig extends GcTagBoxEditorConfig {
items?: object[] | string[] | null;
showDropDown?: boolean;
autoFilter?: AutoFilter | null;
showDropDownIfNoItems?: boolean;
autoSelect?: boolean;
dropDownAlignmentMode?: GcTagBoxDropDownAlignmentMode;
value?: (string | object)[];
dropDownHeight?: number | null;
dropDownWidth?: number | null;
allowDropDownResize?: boolean;
dropDownDisplayMemberPath?: string;
dropDownItemTemplate?: string | null;
dropDownItemHeight?: number;
appendCustomTagToDropDown?: boolean;
dropDownType?: TagBoxDropDownType;
dropDownTreeConfig?: TagBoxDropDownTreeConfig;
}
export interface TagBoxDropDownTreeConfig {
imageMemberPath?: string | null;
childrenMemberPath?: string | null;
expandedMemberPath?: string | null;
checkOnClick?: boolean;
checkBySpace?: boolean;
selectableNodeType?: TreeViewNodeType;
flat?: boolean;
load?: (context: ITreeViewLoadContext) => void | null;
valueConsistsOf?: ValueConsistsOf;
itemTemplate?: string | ((item: object) => HTMLElement) | null;
virtualMode?: boolean | null;
}
export interface ITagBoxDropDown {
animationType: DropDownAnimationType;
open: (showAnimation: boolean) => void;
close: (showAnimation: boolean) => void;
toggleOpen: () => void;
getElement: () => HTMLElement;
updatePosition: () => void;
}
export interface GcTextBoxConfig extends GcInputManBaseConfig {
autoConvert?: boolean;
ellipsis?: EllipsisMode | null;
ellipsisString?: string | null;
format?: string | null;
lengthAsByte?: boolean;
maxLength?: number | null;
passwordChar?: string | null;
text?: string | null;
useSystemPasswordChar?: boolean;
IMEReadingStringAppend?: boolean;
IMEReadingStringKanaMode?: KanaMode | null;
IMEReadingStringEnableAlphabetReadingMapping?: boolean | null;
exitOnLastChar?: boolean;
highlightText?: boolean;
passwordRevelationMode?: PasswordRevelationMode | null;
useStandardPasswordInput?: boolean;
trimMode?: TrimMode;
acceptsTabChar?: TabCharMode;
acceptsCrlf?: CrLfMode | null;
}
export interface GcMultiLineTextBoxConfig extends GcInputManBaseConfig {
autoConvert?: boolean;
countWrappedLine?: boolean;
format?: string | null;
lengthAsByte?: boolean;
lines?: string[] | null;
maxLength?: number;
maxLineCount?: number;
scrollBarMode?: ScrollBarMode | null;
scrollBars?: ScrollBars | null;
text?: string | null;
wordWrap?: boolean;
acceptsReturn?: boolean;
acceptsAltReturn?: boolean;
acceptsTab?: boolean;
IMEReadingStringAppend?: boolean;
IMEReadingStringKanaMode?: KanaMode | null;
IMEReadingStringEnableAlphabetReadingMapping?: boolean;
exitOnLastChar?: boolean;
highlightText?: boolean;
cursorPosition?: MultiLineCursorPosition;
resize?: ResizeMode;
hiddenResizeIcon?: boolean;
}
export interface IReadingStringChangedEventArgs {
readingString: string;
}
export interface TreeViewSortFunc {
(item1: object, item2: object): number;
}
export interface ITreeViewItemGeneratingArgs {
element: HTMLElement;
item: object;
}
export interface ITreeViewTemplateSelectArgs {
template: string[];
item: object;
}
export interface ITreeViewLoadContext {
item: object;
callback(items: object[]): void;
}
export interface InputArgs {
oldText: string;
newText: string;
}
export interface GcTagBoxEditorConfig {
width?: number | string;
height?: number | string;
watermarkNullText?: string;
watermarkDisplayNullText?: string;
tagTemplate?: string | ((args: any) => HTMLElement);
readOnly?: boolean;
enabled?: boolean;
allowResize?: boolean;
displayMode?: TagBoxDisplayMode;
allowCopyTag?: boolean;
allowDragTag?: boolean;
allowSelectTag?: boolean;
allowCustomTag?: boolean;
applyCustomTagKey?: Key;
separator?: string;
tagImageMemberPath?: string;
tagTextMemberPath?: string;
showImage?: boolean;
minHeight?: number | string;
minWidth?: number | string;
maxHeight?: number | string;
maxWidth?: number | string;
maxTagWidth?: number;
uniqueTags?: boolean;
maxTagCount?: number;
imageAlignment?: GcTagImageAlignment;
floatingLabelText?: string;
floatingLabelType?: FloatingLabelType;
floatingLabelDirection?: FloatingLabelDirection;
helpContent?: string;
showHelpButton?: boolean;
showClearButton?: boolean;
tagValidator?: (args: any) => boolean;
}
export function FindIMControl(el: string | Element | Element[]): any;
export function updateCustomEra(customEras: Array<ICustomEra>): void;
export function setCulture(v: Culture, cultureResource?: object): void;
}
}
export = GC;