Cute Chess
0.1
Main Page
Namespaces
Classes
Files
File List
projects
gui
src
tilelayout.h
1
/*
2
This file is part of Cute Chess.
3
Copyright (C) 2008-2018 Cute Chess authors
4
5
Cute Chess is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9
10
Cute Chess is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with Cute Chess. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef TILELAYOUT_H
20
#define TILELAYOUT_H
21
22
#include <QLayout>
23
#include <QStyle>
24
25
class
TileLayout
:
public
QLayout
26
{
27
Q_OBJECT
28
29
public
:
30
explicit
TileLayout
(
QWidget
* parent =
nullptr
);
31
virtual
~
TileLayout
();
32
33
// Inherited from QLayout
34
void
addItem(
QLayoutItem
* item);
35
Qt::Orientations expandingDirections()
const
;
36
int
count()
const
;
37
QLayoutItem
* itemAt(
int
index)
const
;
38
QSize minimumSize()
const
;
39
void
setGeometry(
const
QRect& rect);
40
QSize sizeHint()
const
;
41
QLayoutItem
* takeAt(
int
index);
42
43
private
:
44
int
horizontalSpacing()
const
;
45
int
verticalSpacing()
const
;
46
void
doLayout(
const
QRect& rect)
const
;
47
int
smartSpacing(
QStyle::PixelMetric
pm)
const
;
48
49
QList<QLayoutItem*>
m_items;
50
};
51
52
#endif // TILELAYOUT_H
QWidget
QLayout
QLayoutItem
QList< QLayoutItem * >
TileLayout
Definition:
tilelayout.h:25
QStyle::PixelMetric
PixelMetric
Generated by
1.8.11