diff --git a/components/Modal.slint b/components/Modal.slint new file mode 100644 index 0000000..19d90ce --- /dev/null +++ b/components/Modal.slint @@ -0,0 +1,31 @@ +import { Palette } from "Palette.slint"; + +export component Modal inherits Rectangle { + public function show() { + if (self.absolute-position.x < 500px) { + self.x += 500px - self.absolute-position.x; + } + if (self.absolute-position.y != 100px) { + self.y += 100px - self.absolute-position.y; + } + popup.show() + } + + public function close() { + popup.close() + } + + popup := PopupWindow { + close-policy: close-on-click-outside; + background := Rectangle { + height: 100%; + width: 100%; + background: Palette.background1; + border-color: Palette.popup-border; + border-width: 1px; + border-radius: 4px; + } + + @children + } +}