uicore-ts
Version:
UICore is a library to build native-like user interfaces using pure Typescript. No HTML is needed at all. Components are described as TS classes and all user interactions are handled explicitly. This library is strongly inspired by the UIKit framework tha
61 lines (60 loc) • 2.04 kB
TypeScript
import { UIView, UIViewBroadcastEvent } from "./UIView";
export declare class UIBaseButton extends UIView {
_selected: boolean;
_highlighted: boolean;
_isPointerInside: boolean;
_isToggleable: boolean;
_hovered?: boolean;
_focused?: boolean;
constructor(elementID?: string, elementType?: string);
set hovered(hovered: boolean);
get hovered(): boolean;
set highlighted(highlighted: boolean);
get highlighted(): boolean;
set focused(focused: boolean);
get focused(): boolean;
set selected(selected: boolean);
get selected(): boolean;
updateContentForCurrentState(): void;
updateContentForNormalState(): void;
updateContentForHoveredState(): void;
updateContentForFocusedState(): void;
updateContentForHighlightedState(): void;
updateContentForSelectedState(): void;
updateContentForSelectedAndHighlightedState(): void;
set enabled(enabled: boolean);
get enabled(): boolean;
updateContentForCurrentEnabledState(): void;
addStyleClass(styleClassName: string): void;
didReceiveBroadcastEvent(event: UIViewBroadcastEvent): void;
toggleSelectedState(): void;
set isToggleable(isToggleable: boolean);
get isToggleable(): boolean;
layoutSubviews(): void;
sendControlEventForKey(eventKey: string, nativeEvent: Event): void;
static getEventCoordinatesInDocument(touchOrMouseEvent: any): {
x: number;
y: number;
};
static getElementPositionInDocument(el: {
tagName: string;
offsetLeft: number;
scrollLeft: number;
clientLeft: number;
offsetTop: number;
scrollTop: number;
clientTop: number;
offsetParent: any;
}): {
x: number;
y: number;
};
static convertCoordinatesFromDocumentToElement(x: number, y: number, element: any): {
x: number;
y: number;
};
static getEventCoordinatesInElement(touchOrMouseEvent: any, element: any): {
x: number;
y: number;
};
}