[view] popup: add onShow and onClose methods

This commit is contained in:
2019-05-21 21:15:20 +03:00
parent 349916e504
commit bdaf3504e3
2 changed files with 7 additions and 1 deletions

View File

@@ -30,7 +30,7 @@ class DefaultLayout extends Layout {
placeViewVertical(group, view); placeViewVertical(group, view);
false; false;
case LAYOUT: case LAYOUT:
true; view.visible;
} }
})); }));
} }

View File

@@ -45,14 +45,20 @@ class PopupView<R> extends GroupView {
return this.view; return this.view;
} }
private function onShow():Void {}
private function onClose():Void {}
public function show():Promise<R> { public function show():Promise<R> {
manager.show(this); manager.show(this);
deferred = new Deferred<R>(); deferred = new Deferred<R>();
onShow();
return deferred.promise(); return deferred.promise();
} }
public function close(result:R):Void { public function close(result:R):Void {
manager.close(this); manager.close(this);
onClose();
if (deferred != null) { if (deferred != null) {
deferred.resolve(result); deferred.resolve(result);
deferred = null; deferred = null;