AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
AViewContainer.h
1/*
2 * AUI Framework - Declarative UI toolkit for modern C++20
3 * Copyright (C) 2020-2024 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 "AViewContainerBase.h"
15
33class API_AUI_VIEWS AViewContainer: public AViewContainerBase {
34public:
36 ~AViewContainer() override;
37
47};
A view that represents a set of views.
Definition: AViewContainerBase.h:68
void addViewCustomLayout(const _< AView > &view)
Adds view to container without exposing it to the layout manager.
Definition: AViewContainerBase.cpp:154
void setViews(AVector< _< AView > > views)
Replace views.
Definition: AViewContainerBase.cpp:614
void setLayout(_unique< ALayout > layout)
Set new layout manager for this AViewContainerBase. DESTROYS OLD LAYOUT MANAGER WITH ITS VIEWS!...
Definition: AViewContainerBase.cpp:175
const _unique< ALayout > & getLayout() const noexcept
Get layout manager of the container.
Definition: AViewContainerBase.h:140
void addViews(AVector< _< AView > > views)
Add all views from vector.
Definition: AViewContainerBase.cpp:126
void removeAllViews()
Remove all views from container.
Definition: AViewContainerBase.cpp:493
void removeView(const _< AView > &view)
Remove view from the container.
Definition: AViewContainerBase.cpp:192
void addView(const _< AView > &view)
Add view to the container.
Definition: AViewContainerBase.cpp:143
void setContents(const _< AViewContainer > &container)
Moves (like via std::move) all children and layout of the specified container to this container.
Definition: AViewContainerBase.cpp:513
A trivial modifiable view that represents a set of views.
Definition: AViewContainer.h:33