// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.2 OR LicenseRef-Slint-commercial

import { StyleMetrics, Button } from "std-widgets-impl.slint";

export component StandardButton {
    in property <StandardButtonKind> kind;
    in property <bool> enabled <=> btn.enabled;
    out property <bool> has-focus <=> btn.has-focus;
    out property <bool> pressed <=> btn.pressed;

    callback clicked <=> btn.clicked;

    btn := Button {
        text:
            root.kind == StandardButtonKind.ok ? "OK" :
            root.kind == StandardButtonKind.cancel ? "Cancel" :
            root.kind == StandardButtonKind.apply ? "Apply" :
            root.kind == StandardButtonKind.close ? "Close" :
            root.kind == StandardButtonKind.reset ? "Reset" :
            root.kind == StandardButtonKind.help ? "Help" :
            root.kind == StandardButtonKind.yes ? "Yes" :
            root.kind == StandardButtonKind.no ? "No" :
            root.kind == StandardButtonKind.abort ? "Abort" :
            root.kind == StandardButtonKind.retry ? "Retry" :
            root.kind == StandardButtonKind.ignore ? "Ignore" : "";
    }
}
