AUI Framework  master
Cross-platform base for C++ UI apps
Loading...
Searching...
No Matches
Visibility.h
    1/*
    2 * AUI Framework - Declarative UI toolkit for modern C++20
    3 * Copyright (C) 2020-2025 Alex2772 and Contributors
    4 *
    5 * SPDX-License-Identifier: MPL-2.0
    6 *
    7 * This Source Code Form is subject to the terms of the Mozilla Public
    8 * License, v. 2.0. If a copy of the MPL was not distributed with this
    9 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
   10 */
   11
   12#pragma once
   13
   14#include "IProperty.h"
   15#include <AUI/Enum/Visibility.h> // defined here
   16
   17namespace ass::prop {
   18    template<>
   19    struct API_AUI_VIEWS Property<Visibility>: IPropertyBase {
   20    private:
   21        Visibility mInfo;
   22
   23    public:
   24        Property(const Visibility& visibility) : mInfo(visibility) {
   25
   26        }
   27
   28        void applyFor(AView* view) override;
   29
   30        [[nodiscard]]
   31        const auto& value() const noexcept {
   32            return mInfo;
   33        }
   34    };
   35}
Base class of all UI objects.
Definition AView.h:78
Base class for all properties.
Definition IPropertyBase.h:50