/*
 * This file is part of sdbclient
 * Copyright (C) 2023 Jonni Liljamo <jonni@liljamo.com>
 *
 * Licensed under GPL-3.0-only.
 * See LICENSE for licensing information.
 */

use bevy::prelude::*;
use iyes_loopless::prelude::*;

use belly::prelude::*;

use super::MenuState;

pub(super) fn settings_setup(mut commands: Commands) {
    commands.add(eml! {
        <body>
            <div c:settingsmenu>
                <buttongroup on:value_change=connect!(|ctx| {
                    let ev = ctx.event();
                    ctx.select(ev.old_value()).add_class("hidden");
                    ctx.select(ev.new_value()).remove_class("hidden");
                })>
                    <button c:settingstab value=".tabdisplay" pressed>"Display"</button>
                    <button c:settingstab value=".tabaudio">"Audio"</button>
                    <button c:settingstab value=".tabmisc">"Misc"</button>
                </buttongroup>
                <div>
                    <div c:tabdisplay>"display"</div>
                    <div c:tabaudio c:hidden>"audio"</div>
                    <div c:tabmisc c:hidden>"misc"</div>
                </div>
                <button c:menubutton on:press=connect!(|ctx| {
                    ctx.commands().insert_resource(NextState(MenuState::Main))
                })>
                    "Back"
                </button>
            </div>
        </body>
    });
}