ManaPlus
src
gui
widgets
container.cpp
Go to the documentation of this file.
1
/*
2
* The ManaPlus Client
3
* Copyright (C) 2004-2009 The Mana World Development Team
4
* Copyright (C) 2009-2010 The Mana Developers
5
* Copyright (C) 2011-2019 The ManaPlus Developers
6
* Copyright (C) 2019-2021 Andrei Karas
7
*
8
* This file is part of The ManaPlus Client.
9
*
10
* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation; either version 2 of the License, or
13
* any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the GNU General Public License
21
* along with this program. If not, see <http://www.gnu.org/licenses/>.
22
*/
23
24
#include "
gui/widgets/container.h
"
25
26
#include "
gui/gui.h
"
27
28
#include "
debug.h
"
29
30
Container::Container
(
const
Widget2
*
const
widget) :
31
BasicContainer2
(widget)
32
{
33
setOpaque
(
Opaque_false
);
34
}
35
36
Container::~Container
()
37
{
38
if
(
gui
!=
nullptr
)
39
gui
->
removeDragged
(
this
);
40
removeControls
();
41
}
42
43
void
Container::removeControls
()
44
{
45
while
(!
mWidgets
.empty())
46
delete
mWidgets
.front();
47
}
48
49
bool
Container::safeRemove
(
Widget
*
const
widget)
50
{
51
for
(
WidgetListConstIterator
iter =
mWidgets
.begin();
52
iter !=
mWidgets
.end(); ++iter)
53
{
54
if
(*iter == widget)
55
{
56
remove
(widget);
57
return
true
;
58
}
59
}
60
return
false
;
61
}
BasicContainer2
Definition:
basiccontainer2.h:81
BasicContainer2::setOpaque
void setOpaque(Opaque opaque)
Definition:
basiccontainer2.h:110
BasicContainer::mWidgets
WidgetList mWidgets
Definition:
basiccontainer.h:209
BasicContainer::remove
virtual void remove(Widget *const widget)
Definition:
basiccontainer.cpp:277
BasicContainer::WidgetListConstIterator
WidgetList::const_iterator WidgetListConstIterator
Definition:
basiccontainer.h:194
Container::safeRemove
bool safeRemove(Widget *const widget)
Definition:
container.cpp:49
Container::Container
Container(const Widget2 *const widget)
Definition:
container.cpp:30
Container::removeControls
void removeControls()
Definition:
container.cpp:43
Container::~Container
~Container()
Definition:
container.cpp:36
Gui::removeDragged
void removeDragged(const Widget *const widget)
Definition:
gui.cpp:1162
Widget2
Definition:
widget2.h:37
Widget
Definition:
widget.h:99
container.h
debug.h
gui
Gui * gui
Definition:
gui.cpp:111
gui.h
Opaque_false
const bool Opaque_false
Definition:
opaque.h:30
Generated on Wed Mar 17 2021 19:19:06 for ManaPlus by
1.9.1