Add find visible items for list and flowlayout

This commit is contained in:
pengfei.zhou
2021-10-12 16:33:04 +08:00
committed by osborn
parent 1f511823c5
commit 6cae752456
19 changed files with 172 additions and 138 deletions

View File

@@ -2316,12 +2316,6 @@ var ListItem = /** @class */ (function (_super) {
], ListItem.prototype, "actions", void 0);
return ListItem;
}(Stack));
exports.OtherItems = void 0;
(function (OtherItems) {
OtherItems[OtherItems["LoadMore"] = -10] = "LoadMore";
OtherItems[OtherItems["Header"] = -11] = "Header";
OtherItems[OtherItems["Footer"] = -12] = "Footer";
})(exports.OtherItems || (exports.OtherItems = {}));
var List = /** @class */ (function (_super) {
__extends$c(List, _super);
function List() {
@@ -2344,14 +2338,14 @@ var List = /** @class */ (function (_super) {
};
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
List.prototype.findVisibleItems = function (context) {
return this.nativeChannel(context, 'findVisibleItems')();
};
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
List.prototype.findCompletelyVisibleItems = function (context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();
@@ -2956,14 +2950,14 @@ var FlowLayout = /** @class */ (function (_super) {
};
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
FlowLayout.prototype.findVisibleItems = function (context) {
return this.nativeChannel(context, 'findVisibleItems')();
};
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
FlowLayout.prototype.findCompletelyVisibleItems = function (context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();

View File

@@ -1739,12 +1739,6 @@ __decorate$9([
Property,
__metadata$9("design:type", Array)
], ListItem.prototype, "actions", void 0);
exports.OtherItems = void 0;
(function (OtherItems) {
OtherItems[OtherItems["LoadMore"] = -10] = "LoadMore";
OtherItems[OtherItems["Header"] = -11] = "Header";
OtherItems[OtherItems["Footer"] = -12] = "Footer";
})(exports.OtherItems || (exports.OtherItems = {}));
class List extends Superview {
constructor() {
super(...arguments);
@@ -1765,14 +1759,14 @@ class List extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context) {
return this.nativeChannel(context, 'findVisibleItems')();
}
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();
@@ -2232,14 +2226,14 @@ class FlowLayout extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context) {
return this.nativeChannel(context, 'findVisibleItems')();
}
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();

View File

@@ -3260,12 +3260,6 @@ __decorate$9([
Property,
__metadata$9("design:type", Array)
], ListItem.prototype, "actions", void 0);
exports.OtherItems = void 0;
(function (OtherItems) {
OtherItems[OtherItems["LoadMore"] = -10] = "LoadMore";
OtherItems[OtherItems["Header"] = -11] = "Header";
OtherItems[OtherItems["Footer"] = -12] = "Footer";
})(exports.OtherItems || (exports.OtherItems = {}));
class List extends Superview {
constructor() {
super(...arguments);
@@ -3286,14 +3280,14 @@ class List extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context) {
return this.nativeChannel(context, 'findVisibleItems')();
}
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();
@@ -3753,14 +3747,14 @@ class FlowLayout extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context) {
return this.nativeChannel(context, 'findVisibleItems')();
}
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();

33
doric-js/index.d.ts vendored
View File

@@ -703,11 +703,6 @@ declare module 'doric/lib/src/widget/list' {
callback: () => void;
}[];
}
export enum OtherItems {
LoadMore = -10,
Header = -11,
Footer = -12
}
export class List extends Superview {
allSubviews(): ListItem[];
itemCount: number;
@@ -735,20 +730,14 @@ declare module 'doric/lib/src/widget/list' {
}): Promise<any>;
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}>;
findVisibleItems(context: BridgeContext): Promise<number[]>;
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}>;
findCompletelyVisibleItems(context: BridgeContext): Promise<number[]>;
reset(): void;
toModel(): NativeViewModel;
}
@@ -887,20 +876,14 @@ declare module 'doric/lib/src/widget/flowlayout' {
bounces?: boolean;
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}[]>;
findVisibleItems(context: BridgeContext): Promise<number[]>;
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}[]>;
findCompletelyVisibleItems(context: BridgeContext): Promise<number[]>;
reset(): void;
toModel(): NativeViewModel;
}

View File

@@ -39,20 +39,14 @@ export declare class FlowLayout extends Superview {
bounces?: boolean;
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}[]>;
findVisibleItems(context: BridgeContext): Promise<number[]>;
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}[]>;
findCompletelyVisibleItems(context: BridgeContext): Promise<number[]>;
reset(): void;
private getItem;
private renderBunchedItems;

View File

@@ -52,14 +52,14 @@ export class FlowLayout extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context) {
return this.nativeChannel(context, 'findVisibleItems')();
}
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();

View File

@@ -13,11 +13,6 @@ export declare class ListItem extends Stack {
callback: () => void;
}[];
}
export declare enum OtherItems {
LoadMore = -10,
Header = -11,
Footer = -12
}
export declare class List extends Superview {
private cachedViews;
allSubviews(): ListItem[];
@@ -46,20 +41,14 @@ export declare class List extends Superview {
}): Promise<any>;
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}>;
findVisibleItems(context: BridgeContext): Promise<number[]>;
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context: BridgeContext): Promise<{
first: number;
last: number;
}>;
findCompletelyVisibleItems(context: BridgeContext): Promise<number[]>;
reset(): void;
private getItem;
private renderBunchedItems;

View File

@@ -35,12 +35,6 @@ __decorate([
Property,
__metadata("design:type", Array)
], ListItem.prototype, "actions", void 0);
export var OtherItems;
(function (OtherItems) {
OtherItems[OtherItems["LoadMore"] = -10] = "LoadMore";
OtherItems[OtherItems["Header"] = -11] = "Header";
OtherItems[OtherItems["Footer"] = -12] = "Footer";
})(OtherItems || (OtherItems = {}));
export class List extends Superview {
constructor() {
super(...arguments);
@@ -61,14 +55,14 @@ export class List extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context) {
return this.nativeChannel(context, 'findVisibleItems')();
}
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')();

View File

@@ -86,17 +86,18 @@ export class FlowLayout extends Superview {
/**
* @param context
* @returns Returns the range of the visible views for each column.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context: BridgeContext) {
return this.nativeChannel(context, 'findVisibleItems')() as Promise<{ first: number, last: number }[]>
return this.nativeChannel(context, 'findVisibleItems')() as Promise<number[]>
}
/**
* @param context
* @returns Returns the range of the completely visible views for each column.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context: BridgeContext) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')() as Promise<{ first: number, last: number }[]>
return this.nativeChannel(context, 'findCompletelyVisibleItems')() as Promise<number[]>
}

View File

@@ -35,12 +35,6 @@ export class ListItem extends Stack {
}[]
}
export enum OtherItems {
LoadMore = -10,
Header = -11,
Footer = -12,
}
export class List extends Superview {
private cachedViews: Map<string, ListItem> = new Map
@@ -93,17 +87,17 @@ export class List extends Superview {
}
/**
* @param context
* @returns Returns the range of the visible views.
* @returns Returns array of visible view's index.
*/
findVisibleItems(context: BridgeContext) {
return this.nativeChannel(context, 'findVisibleItems')() as Promise<{ first: number, last: number }>
return this.nativeChannel(context, 'findVisibleItems')() as Promise<number[]>
}
/**
* @param context
* @returns Returns the range of the completely visible views.
* @returns Returns array of completely visible view's index.
*/
findCompletelyVisibleItems(context: BridgeContext) {
return this.nativeChannel(context, 'findCompletelyVisibleItems')() as Promise<{ first: number, last: number }>
return this.nativeChannel(context, 'findCompletelyVisibleItems')() as Promise<number[]>
}
reset() {