Skip to main content

Компоненты

Fluent Plus предлагает широкий спектр интерактивных элементов.

Кнопка (Button)

Простой элемент для нажатия.
Tab:AddButton({
    Title = "Кнопка",
    Description = "Текст описания",
    Icon = "settings", -- Иконка Lucide
    Callback = function()
        print("Нажато")
    end
})

Переключатель (Toggle)

Переключение между состояниями true/false.
local Toggle = Tab:AddToggle("ToggleId", {
    Title = "Функция",
    Description = "Включить что-либо",
    Default = false,
    Icon = "toggle-right",
    Callback = function(Value)
        print("Состояние:", Value)
    end
})

Toggle:OnChanged(function() print("Переключено") end)
Toggle:SetValue(true)

Слайдер (Slider)

Выбор значения из диапазона.
local Slider = Tab:AddSlider("SliderId", {
    Title = "Скорость",
    Description = "Настройка скорости",
    Default = 16,
    Min = 16,
    Max = 100,
    Rounding = 1,
    Icon = "activity",
    Callback = function(Value)
        print("Скорость установлена на:", Value)
    end
})

Slider:OnChanged(function(Value) print("Изменено:", Value) end)
Slider:SetValue(50)

Выпадающий список (Dropdown)

Выбор одного или нескольких элементов из списка.
local Dropdown = Tab:AddDropdown("DropdownId", {
    Title = "Опции",
    Values = {"A", "B", "C"},
    Multi = false,
    Default = "A",
    Search = true, -- Включить поиск
    AllowNull = false, -- Разрешить отсутствие выбора (для Multi)
    Icon = "list",
    Callback = function(Value)
        print("Выбрано:", Value)
    end
})

Dropdown:OnChanged(function(Value) print("Изменено:", Value) end)
Dropdown:SetValue("B")

Ввод текста (Input)

Поле для ввода текста.
local Input = Tab:AddInput("InputId", {
    Title = "Пользователь",
    Description = "Описание (необязательно)",
    Default = "Block",
    Placeholder = "Введите имя...",
    Numeric = false, -- Только числа
    Finished = true, -- Вызывать callback только при потере фокуса
    MaxLength = 50, -- Макс. длина текста
    Icon = "type", -- Иконка Lucide
    Callback = function(Value)
        print("Текст:", Value)
    end
})

Input:OnChanged(function(Value) print("Ввод изменен:", Value) end)
Input:SetValue("Новый текст")

Выбор цвета (Colorpicker)

Выбор цвета и прозрачности.
local Colorpicker = Tab:AddColorpicker("ColorPickerId", {
    Title = "Цвет подсветки",
    Description = "Выберите цвет",
    Default = Color3.fromRGB(255, 0, 0),
    Transparency = 0, -- Начальная прозрачность (0-1)
    Icon = "palette",
    Callback = function(Value)
        print("Цвет:", Value)
    end
})

Colorpicker:OnChanged(function() print("Цвет изменен") end)
Colorpicker:SetValueRGB(Color3.fromRGB(0, 255, 0))

Бинд клавиши (Keybind)

Привязка клавиши к действию. Режимы: Toggle (Переключение), Hold (Удержание), Always (Всегда).
local Keybind = Tab:AddKeybind("KeybindId", {
    Title = "Меню",
    Description = "Клавиша для меню",
    Default = "LeftAlt",
    Mode = "Toggle", -- "Toggle" | "Hold" | "Always"
    Icon = "keyboard",
    Callback = function(Value)
        print("Клавиша нажата:", Value)
    end,
    ChangedCallback = function(NewKey)
        print("Клавиша изменена на:", NewKey)
    end
})

-- Методы
Keybind:OnClick(function() print("Клик") end)
Keybind:OnChanged(function(Key) print("Изменено на", Key) end)
Keybind:SetValue("RightControl", "Hold") -- Изменить клавишу и режим

Параграф (Paragraph)

Отображение текстовой информации.
Tab:AddParagraph({
    Title = "Информация",
    Content = "Это параграф.\nОн может содержать много строк.",
    Icon = "info" -- Опциональная иконка
})

Диалог (Dialog)

Показать модальное окно.
Window:Dialog({
    Title = "Подтверждение",
    Content = "Вы уверены, что хотите продолжить?",
    Buttons = {
        {
            Title = "Да",
            Callback = function() print("Нажато Да") end
        },
        {
            Title = "Нет",
            Callback = function() print("Нажато Нет") end
        }
    }
})