Cockatrice 2025-11-30-Development-2.11.0-beta.38
A cross-platform virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
overlap_widget.h
Go to the documentation of this file.
1
6
7#ifndef OVERLAP_WIDGET_H
8#define OVERLAP_WIDGET_H
9
11
12#include <QWidget>
13
14class OverlapWidget final : public QWidget
15{
16 Q_OBJECT
17
18public:
19 OverlapWidget(QWidget *parent,
21 int maxColumns,
22 int maxRows,
23 Qt::Orientation direction,
24 bool adjustOnResize = false);
25 void addWidget(QWidget *widgetToAdd) const;
26 void insertWidgetAtIndex(QWidget *toInsert, int index);
27 void removeWidget(QWidget *widgetToRemove) const;
28 void clearLayout();
30
31public slots:
32 void maxOverlapItemsChanged(int newValue);
33 void overlapDirectionChanged(const QString &newDirection);
34
35protected:
36 void resizeEvent(QResizeEvent *event) override;
37
38private:
43 Qt::Orientation direction;
44 bool adjustOnResize = false;
45};
46
47#endif // OVERLAP_WIDGET_H
Custom layout class to arrange widgets with overlapping positions.
Definition overlap_layout.h:18
int overlapPercentage
Definition overlap_widget.h:40
void maxOverlapItemsChanged(int newValue)
Updates the maximum number of overlapping items based on new value.
Definition overlap_widget.cpp:165
void insertWidgetAtIndex(QWidget *toInsert, int index)
Definition overlap_widget.cpp:62
int maxRows
Definition overlap_widget.h:42
void resizeEvent(QResizeEvent *event) override
Handles resizing events for the widget.
Definition overlap_widget.cpp:106
void adjustMaxColumnsAndRows()
Dynamically adjusts maxColumns and maxRows based on widget size and layout direction.
Definition overlap_widget.cpp:128
void overlapDirectionChanged(const QString &newDirection)
Changes the layout direction based on the specified new direction.
Definition overlap_widget.cpp:193
int maxColumns
Definition overlap_widget.h:41
Qt::Orientation direction
Definition overlap_widget.h:43
OverlapWidget(QWidget *parent, int overlapPercentage, int maxColumns, int maxRows, Qt::Orientation direction, bool adjustOnResize=false)
Constructs an OverlapWidget with specified layout parameters.
Definition overlap_widget.cpp:35
void clearLayout()
Clears all widgets from the layout and deletes them.
Definition overlap_widget.cpp:80
bool adjustOnResize
Definition overlap_widget.h:44
void removeWidget(QWidget *widgetToRemove) const
Definition overlap_widget.cpp:68
OverlapLayout * overlapLayout
Definition overlap_widget.h:39
void addWidget(QWidget *widgetToAdd) const
Adds a widget to the overlap layout.
Definition overlap_widget.cpp:57
TODO: Document this.