From 23cdbc8088b5c308a068b432a6b03213ede68f07 Mon Sep 17 00:00:00 2001 From: Aylur Date: Sat, 1 Mar 2025 20:59:09 +0100 Subject: add gtk4 examples --- examples/gtk4/simple-bar/js/src/ts/props.ts | 45 +++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 examples/gtk4/simple-bar/js/src/ts/props.ts (limited to 'examples/gtk4/simple-bar/js/src/ts/props.ts') diff --git a/examples/gtk4/simple-bar/js/src/ts/props.ts b/examples/gtk4/simple-bar/js/src/ts/props.ts new file mode 100644 index 0000000..dfa79ee --- /dev/null +++ b/examples/gtk4/simple-bar/js/src/ts/props.ts @@ -0,0 +1,45 @@ +import GObject from "gi://GObject?version=2.0" + +export function string(name: string, defaultValue = "") { + return { + [name]: GObject.ParamSpec.string( + name, + null, + null, + GObject.ParamFlags.READWRITE, + defaultValue, + ), + } +} + +export function number( + name: string, + min = -Number.MIN_SAFE_INTEGER, + max = Number.MAX_SAFE_INTEGER, + defaultValue = 0, +) { + return { + [name]: GObject.ParamSpec.double( + name, + null, + null, + GObject.ParamFlags.READWRITE, + min, + max, + defaultValue, + ), + } +} + +export function boolean(name: string, defaultValue = false) { + return { + [name]: GObject.ParamSpec.boolean( + name, + null, + null, + GObject.ParamFlags.READWRITE, + defaultValue, + ), + } +} + -- cgit v1.2.3