limited-advantage-32748
11/10/2021, 7:42 PMhaxe
package;
import haxe.ui.core.Screen;
import haxe.ui.events.UIEvent;
import hxd.App;
import haxe.ui.Toolkit;
import haxe.ui.containers.dialogs.Dialog;
import haxe.ui.components.Button;
class Main extends App
{
static function main()
{
new Main();
}
public function new()
{
super();
}
var dialog:Dialog;
var closeMe:Button;
var openMe:Button;
override function init():Void
{
super.init();
Toolkit.init({
root : s2d
});
openMe = new Button();
openMe.text = "Open me!";
Screen.instance.addComponent(openMe);
openMe.onClick = function(e:UIEvent)
{
dialog = new Dialog();
dialog.width = dialog.height = 200;
Screen.instance.addComponent(dialog);
dialog.addComponent(closeMe);
openMe.visible = false;
}
closeMe = new Button();
closeMe.text = "Close Me!";
closeMe.onClick = function(e:UIEvent)
{
dialog.hideDialog(DialogButton.OK);
openMe.visible = true;
}
}
}limited-advantage-32748
11/10/2021, 7:43 PMlimited-advantage-32748
11/10/2021, 7:43 PMbright-gpu-74537
11/10/2021, 10:29 PMbright-gpu-74537
11/11/2021, 7:20 AMbright-gpu-74537
11/11/2021, 7:22 AMnew Dialog() in the handler and setting its .destroyOnClose to falsebright-gpu-74537
11/11/2021, 7:22 AMbright-gpu-74537
11/11/2021, 7:23 AMhaxe
if (dialog == null) {
dialog = new Dialog();
dialog.destroyOnClose = false;
}bright-gpu-74537
11/11/2021, 7:24 AMbright-gpu-74537
11/11/2021, 7:24 AMbright-gpu-74537
11/11/2021, 7:32 AMbright-gpu-74537
11/11/2021, 7:33 AMhaxe
class MyDialog extends Dialog {
public function new() {
super();
var closeMe = new Button();
closeMe.text = "Close Me";
addComponent(closeMe);
closeMe.onClick = function(_) {
hideDialog(DialogButton.OK);
}
}
}bright-gpu-74537
11/11/2021, 7:33 AMbright-gpu-74537
11/11/2021, 7:36 AMbright-gpu-74537
11/11/2021, 7:43 AMbright-gpu-74537
11/11/2021, 7:44 AMbright-gpu-74537
11/11/2021, 7:45 AMbright-gpu-74537
11/11/2021, 7:56 AMbright-gpu-74537
11/11/2021, 7:57 AMbright-gpu-74537
11/11/2021, 7:57 AMhaxe
class MyDialog extends Dialog {
public function new() {
super();
title = "Test Dialog";
var closeMe = new Button();
closeMe.text = "Close Me";
addComponent(closeMe);
closeMe.onClick = function(_) {
hideDialog(DialogButton.OK);
}
}
}bright-gpu-74537
11/11/2021, 7:57 AMhaxe
var open = new Button();
open.text = "Open Me!";
Screen.instance.addComponent(open);
open.onClick = function(_) {
open.hide();
var dialog = new MyDialog();
dialog.width = dialog.height = 200;
dialog.onDialogClosed = function(_) {
open.show();
}
dialog.show();
}nutritious-father-64388
11/11/2021, 1:25 PMlimited-advantage-32748
11/11/2021, 6:26 PMlimited-advantage-32748
11/11/2021, 6:27 PMlimited-advantage-32748
11/11/2021, 6:28 PMlimited-advantage-32748
11/11/2021, 6:28 PMlimited-advantage-32748
11/11/2021, 6:29 PMlimited-advantage-32748
11/11/2021, 6:49 PMbright-gpu-74537
11/11/2021, 7:00 PMlimited-advantage-32748
11/11/2021, 7:01 PM