protected override void CustomRender() { if (_openRequested) { ImGui.OpenPopup(PopupLabel); _isOpen = true; _openRequested = false; } var wasOpen = _isOpen; ImGui.SetNextWindowSize(new Vector2(700, 500)); if (ImGui.BeginPopupModal(PopupLabel, ref _isOpen, ImGuiWindowFlags.Modal)) { ImGui.TextWrapped(_message); ImGui.NewLine(); ImGui.Separator(); if (ImGui.Button("Close")) { _isOpen = false; ImGui.CloseCurrentPopup(); } ImGui.EndPopup(); } if (wasOpen && !_isOpen) { ModalClosed?.Invoke(this, EventArgs.Empty); } }
public void CloseModal(bool isDismissed, TResult result) { ModalClosed?.Invoke(new ModalResult <TResult>(isDismissed, result)); }