diff --git a/src/main/haxework/view/popup/ConfirmView.hx b/src/main/haxework/view/popup/ConfirmView.hx new file mode 100644 index 0000000..f8374dc --- /dev/null +++ b/src/main/haxework/view/popup/ConfirmView.hx @@ -0,0 +1,21 @@ +package haxework.view.popup; + +import haxework.view.form.LabelView; +import haxework.view.text.TextView; +import promhx.Promise; + +@:template class ConfirmView extends PopupView { + + @:view var header:LabelView; + @:view var message:TextView; + + public function new() { + super(); + } + + public static function confirm(message:String):Promise { + var result = new ConfirmView(); + result.message.text = message; + return result.show(); + } +} diff --git a/src/main/haxework/view/popup/ConfirmView.yaml b/src/main/haxework/view/popup/ConfirmView.yaml new file mode 100644 index 0000000..cc0f4fd --- /dev/null +++ b/src/main/haxework/view/popup/ConfirmView.yaml @@ -0,0 +1,34 @@ +--- +view: + $type: haxework.view.group.VGroupView + geometry.width: 400 + geometry.height: 200 + geometry.padding: 10 + geometry.hAlign: center + geometry.vAlign: middle + style: frame + views: + - $type: haxework.view.group.HGroupView + geometry.width: 100% + layout.margin: 10 + views: + - id: header + $type: haxework.view.form.LabelView + - id: message + $type: haxework.view.form.LabelView + font.align: CENTER + layout.hAlign: center + layout.vAlign: middle + geometry.width: 100% + geometry.height: 100% + - $type: haxework.view.group.HGroupView + geometry.width: 100% + layout.hAlign: center + layout.margin: 10 + views: + - $type: haxework.view.form.ButtonView + text: Yes + +onPress: ~close(true) + - $type: haxework.view.form.ButtonView + text: No + +onPress: ~reject('no')