AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
ACustomCaptionWindow.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#include "ACustomWindow.h"
14#include <AUI/View/AButton.h>
15#include <AUI/View/ASpacerExpanding.h>
16#include <AUI/Util/UIBuildingHelpers.h>
17#include "CustomCaptionWindowImplWin32.h"
18
20
21
49public:
50 ACustomCaptionWindow(const AString& name, int width, int height, bool stacked = false);
51
52 ACustomCaptionWindow() : ACustomCaptionWindow("Custom Caption Window", 240, 124) {}
53
54 ~ACustomCaptionWindow() override = default;
55
59 [[nodiscard]]
61 {
62 return mCaptionContainer;
63 }
64
68 [[nodiscard]]
70 {
71 return mContentContainer;
72 }
73
74protected:
75 bool isCustomCaptionMaximized() override;
76
77private:
78 // these functions are hidden; use ACustomCaptionWindow::getContentContainer() instead
86
87};
Represents a window with customizable caption bar.
Definition: ACustomCaptionWindow.h:48
const _< AViewContainer > & getContentContainer() const
Definition: ACustomCaptionWindow.h:69
const _< AViewContainer > & getCaptionContainer() const
Definition: ACustomCaptionWindow.h:60
Represents a window without native caption but still draggable by top side.
Definition: ACustomWindow.h:22
Represents a Unicode character string.
Definition: AString.h:37
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
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
Definition: CustomCaptionWindowImplWin32.h:21
An std::weak_ptr with AUI extensions.
Definition: SharedPtrTypes.h:177
Definition: Size.h:22