summaryrefslogtreecommitdiff
path: root/src/touchactions.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-12-29 01:02:59 +0300
committerAndrei Karas <akaras@inbox.ru>2015-12-29 01:02:59 +0300
commit06073647cf4efbbe9a423d841daea6f462ecddf8 (patch)
tree3a193ee24b745e9db69061a5bbf0f30fe199c0d5 /src/touchactions.cpp
parent38e782f30d15a0fceabf863e40ffe66124cef8a8 (diff)
downloadmv-06073647cf4efbbe9a423d841daea6f462ecddf8.tar.gz
mv-06073647cf4efbbe9a423d841daea6f462ecddf8.tar.bz2
mv-06073647cf4efbbe9a423d841daea6f462ecddf8.tar.xz
mv-06073647cf4efbbe9a423d841daea6f462ecddf8.zip
Move touchactions into touch directory.
Diffstat (limited to 'src/touchactions.cpp')
-rw-r--r--src/touchactions.cpp129
1 files changed, 0 insertions, 129 deletions
diff --git a/src/touchactions.cpp b/src/touchactions.cpp
deleted file mode 100644
index 3d3d38408..000000000
--- a/src/touchactions.cpp
+++ /dev/null
@@ -1,129 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2012-2015 The ManaPlus Developers
- *
- * This file is part of The ManaPlus Client.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "touchactions.h"
-
-#include "input/inputmanager.h"
-#include "input/mouseinput.h"
-
-#include "input/touch/touchmanager.h"
-
-#include "debug.h"
-
-bool padClicked(false);
-int halfJoyPad = 50;
-
-#define impHandler(name) void name(const MouseInput &mouseInput)
-#define impHandler0(name) void name(const MouseInput &mouseInput A_UNUSED)
-
-void setHalfJoyPad(const int s)
-{
- halfJoyPad = s;
-}
-
-static void moveChar(int x, int y)
-{
- static const int lim1 = 10;
- static const int diff = 20;
-
- // set center at (0,0)
- x -= halfJoyPad;
- y -= halfJoyPad;
-
- // some magic for checking at what sector was click
- if (abs(x) < lim1)
- x = 0;
-
- if (abs(y) < lim1)
- y = 0;
-
- const int x2 = abs(x);
- const int y2 = abs(y);
- if (x2 > y2)
- {
- if (y2 && x2 * 10 / y2 > diff)
- y = 0;
- }
- else
- {
- if (x2 && y2 * 10 / x2 > diff)
- x = 0;
- }
-
- // detecting direction
- if (x > 0)
- {
- touchManager.setActionActive(InputAction::MOVE_LEFT, false);
- touchManager.setActionActive(InputAction::MOVE_RIGHT, true);
- }
- else if (x < 0)
- {
- touchManager.setActionActive(InputAction::MOVE_LEFT, true);
- touchManager.setActionActive(InputAction::MOVE_RIGHT, false);
- }
- else
- {
- touchManager.setActionActive(InputAction::MOVE_LEFT, false);
- touchManager.setActionActive(InputAction::MOVE_RIGHT, false);
- }
- if (y > 0)
- {
- touchManager.setActionActive(InputAction::MOVE_DOWN, true);
- touchManager.setActionActive(InputAction::MOVE_UP, false);
- }
- else if (y < 0)
- {
- touchManager.setActionActive(InputAction::MOVE_DOWN, false);
- touchManager.setActionActive(InputAction::MOVE_UP, true);
- }
- else
- {
- touchManager.setActionActive(InputAction::MOVE_DOWN, false);
- touchManager.setActionActive(InputAction::MOVE_UP, false);
- }
- inputManager.updateConditionMask();
-}
-
-impHandler(padClick)
-{
- moveChar(mouseInput.getX(), mouseInput.getY());
- padClicked = true;
-}
-
-impHandler(padEvents)
-{
- if (mouseInput.getType() == MouseEventType::MOVED)
- {
- if (padClicked)
- moveChar(mouseInput.getX(), mouseInput.getY());
- }
-}
-
-impHandler0(padOut)
-{
- padClicked = false;
- moveChar(halfJoyPad, halfJoyPad);
-}
-
-impHandler0(padUp)
-{
- padClicked = false;
- moveChar(halfJoyPad, halfJoyPad);
-}