SavvyUI C++ UI Library
Loading...
Searching...
No Matches
PanelBase.h
Go to the documentation of this file.
1#pragma once
2
3#include "Component.h"
4#include "Label.h"
5
21
28class PanelBase : public Component
29{
30protected:
31
32 std::vector<PanelBaseChild> _children;
33
35
45 BOOL getCreateWindowOptions(wstring& title, UINT& widownStyles, wstring& wndClassName, BOOL& isCustomWndProc);
46
52 virtual wstring getClassName() = 0;
53
54public:
55
56 BOOL getChildren(vector<Component*>& children);
57
58public:
63
67 virtual ~PanelBase();
68
73};
Base class for all UI components providing window creation, event handling, and listener management.
Definition Component.h:32
Component()
Constructs a new Component instance.
A UI component for displaying text with customizable alignment.
Definition Label.h:13
Definition PanelBase.h:7
int _row
Definition PanelBase.h:10
int _y
Definition PanelBase.h:14
int _width
Definition PanelBase.h:15
wstring _labelText
Definition PanelBase.h:18
Component * _component
Definition PanelBase.h:17
Label * _label
Definition PanelBase.h:19
int _column
Definition PanelBase.h:9
int _height
Definition PanelBase.h:16
int _x
Definition PanelBase.h:13
int _rowCount
Definition PanelBase.h:12
int _columnCount
Definition PanelBase.h:11
BOOL getChildren(vector< Component * > &children)
virtual wstring getClassName()=0
Gets the class name for the window. Must be implemented by derived classes.
void onWindowMoved()
Called when the panel window has moved.
BOOL getCreateWindowOptions(wstring &title, UINT &widownStyles, wstring &wndClassName, BOOL &isCustomWndProc)
Retrieves window creation options such as window title, styles, and class name.
virtual ~PanelBase()
Virtual destructor to clean up resources.
PanelBase()
Constructs a PanelBase instance.
std::vector< PanelBaseChild > _children
Definition PanelBase.h:32
BOOL isScrollingSupported()