ManaPlus
src
listeners
inputactionreplaylistener.cpp
Go to the documentation of this file.
1
/*
2
* The ManaPlus Client
3
* Copyright (C) 2011-2019 The ManaPlus Developers
4
* Copyright (C) 2019-2021 Andrei Karas
5
*
6
* This file is part of The ManaPlus Client.
7
*
8
* This program is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation; either version 2 of the License, or
11
* any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
22
#include "
listeners/inputactionreplaylistener.h
"
23
24
#include "
gui/windows/editdialog.h
"
25
26
#include "
gui/widgets/createwidget.h
"
27
28
#include "
input/inputmanager.h
"
29
30
#include "
debug.h
"
31
32
InputActionReplayListener
inputActionReplayListener
;
33
34
InputActionReplayListener::InputActionReplayListener
() :
35
ActionListener
(),
36
mDialog
(
nullptr
),
37
mAction(
InputAction
::
NO_VALUE
)
38
{
39
}
40
41
void
InputActionReplayListener::openDialog
(
const
std::string &caption,
42
const
std::string &text,
43
const
InputActionT
action0)
44
{
45
CREATEWIDGETV
(
mDialog
,
EditDialog
,
46
caption,
47
text,
48
"OK"
,
49
300,
50
nullptr
,
51
Modal_true
);
52
mDialog
->
addActionListener
(
this
);
53
mAction
= action0;
54
}
55
56
void
InputActionReplayListener::action
(
const
ActionEvent
&event)
57
{
58
if
(event.
getId
() !=
"OK"
)
59
{
60
mDialog
=
nullptr
;
61
mAction
=
InputAction::NO_VALUE
;
62
return
;
63
}
64
if
(
mDialog
!=
nullptr
)
65
{
66
inputManager
.
executeChatCommand
(
mAction
,
67
mDialog
->
getMsg
(),
68
nullptr
);
69
mDialog
=
nullptr
;
70
}
71
mAction
=
InputAction::NO_VALUE
;
72
}
ActionEvent
Definition:
actionevent.h:98
ActionEvent::getId
const std::string & getId() const
Definition:
actionevent.h:122
ActionListener
Definition:
actionlistener.h:79
EditDialog
Definition:
editdialog.h:42
EditDialog::getMsg
std::string getMsg() const
Definition:
editdialog.h:65
InputActionReplayListener
Definition:
inputactionreplaylistener.h:34
InputActionReplayListener::action
void action(const ActionEvent &event)
Definition:
inputactionreplaylistener.cpp:56
InputActionReplayListener::openDialog
void openDialog(const std::string &caption, const std::string &text, const InputActionT action0)
Definition:
inputactionreplaylistener.cpp:41
InputActionReplayListener::InputActionReplayListener
InputActionReplayListener()
Definition:
inputactionreplaylistener.cpp:34
InputActionReplayListener::mDialog
EditDialog * mDialog
Definition:
inputactionreplaylistener.h:50
InputActionReplayListener::mAction
InputActionT mAction
Definition:
inputactionreplaylistener.h:51
InputManager::executeChatCommand
bool executeChatCommand(const std::string &cmd, const std::string &args, ChatTab *const tab)
Definition:
inputmanager.cpp:898
Widget::addActionListener
void addActionListener(ActionListener *const actionListener)
Definition:
widget.cpp:252
createwidget.h
CREATEWIDGETV
#define CREATEWIDGETV(var, type,...)
Definition:
createwidget.h:25
debug.h
editdialog.h
InputActionT
InputAction ::T InputActionT
Definition:
inputaction.h:717
inputActionReplayListener
InputActionReplayListener inputActionReplayListener
Definition:
inputactionreplaylistener.cpp:32
inputactionreplaylistener.h
inputManager
InputManager inputManager
Definition:
inputmanager.cpp:69
inputmanager.h
nullptr
#define nullptr
Definition:
localconsts.h:45
Modal_true
const bool Modal_true
Definition:
modal.h:30
Ea::NpcRecv::mDialog
NpcDialog * mDialog
Definition:
npcrecv.cpp:42
InputAction
Definition:
inputaction.h:41
InputAction::NO_VALUE
@ NO_VALUE
Definition:
inputaction.h:44
Generated on Wed Mar 17 2021 19:19:08 for ManaPlus by
1.9.1