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
34 HDWP _hDwp;
35
37
47 BOOL getCreateWindowOptions(wstring& title, UINT& widownStyles, wstring& wndClassName, BOOL& isCustomWndProc);
48
54 virtual wstring getClassName() = 0;
55
56public:
57
58 BOOL getChildren(vector<Component*>& children);
59
60public:
65
69 virtual ~PanelBase();
70
75};
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()
HDWP _hDwp
Definition PanelBase.h:34