summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/Makefile.am1
-rw-r--r--src/gui/base/gui.cpp7
-rw-r--r--src/gui/base/gui.hpp8
-rw-r--r--src/gui/base/input.hpp134
-rw-r--r--src/gui/sdlinput.cpp4
-rw-r--r--src/gui/sdlinput.h24
7 files changed, 21 insertions, 158 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b523f084c..a024966a3 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -773,7 +773,6 @@ SET(SRCS
gui/base/focushandler.hpp
listeners/focuslistener.h
gui/base/gui.hpp
- gui/base/input.hpp
events/inputguievent.h
gui/base/key.hpp
events/keyevent.h
diff --git a/src/Makefile.am b/src/Makefile.am
index 19f8fe4f2..2476a6bff 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -161,7 +161,6 @@ manaplus_SOURCES += events/actionevent.h \
listeners/focuslistener.h \
render/graphics.h \
gui/base/gui.hpp \
- gui/base/input.hpp \
events/inputguievent.h \
gui/base/key.hpp \
events/keyevent.h \
diff --git a/src/gui/base/gui.cpp b/src/gui/base/gui.cpp
index e5291cb60..02c6e6674 100644
--- a/src/gui/base/gui.cpp
+++ b/src/gui/base/gui.cpp
@@ -69,9 +69,10 @@
#include "gui/base/basiccontainer.hpp"
#include "gui/base/focushandler.hpp"
-#include "gui/base/input.hpp"
#include "gui/base/widget.hpp"
+#include "gui/sdlinput.h"
+
#include "input/keyinput.h"
#include "input/mouseinput.h"
@@ -139,12 +140,12 @@ namespace gcn
return mGraphics;
}
- void Gui::setInput(Input* input)
+ void Gui::setInput(SDLInput* input)
{
mInput = input;
}
- Input* Gui::getInput() const
+ SDLInput* Gui::getInput() const
{
return mInput;
}
diff --git a/src/gui/base/gui.hpp b/src/gui/base/gui.hpp
index 2ec5d7082..6e6a3867d 100644
--- a/src/gui/base/gui.hpp
+++ b/src/gui/base/gui.hpp
@@ -74,11 +74,11 @@
class Graphics;
class KeyListener;
+class SDLInput;
namespace gcn
{
class FocusHandler;
- class Input;
class Widget;
// The following comment will appear in the doxygen main page.
@@ -178,7 +178,7 @@ namespace gcn
* SDLInput
* @since 0.1.0
*/
- virtual void setInput(Input* input);
+ virtual void setInput(SDLInput* input);
/**
* Gets the input object being used for input handling.
@@ -189,7 +189,7 @@ namespace gcn
* SDLInput
* @since 0.1.0
*/
- virtual Input* getInput() const A_WARN_UNUSED;
+ virtual SDLInput* getInput() const A_WARN_UNUSED;
/**
* Performs logic of the GUI. By calling this function all logic
@@ -418,7 +418,7 @@ namespace gcn
/**
* Holds the input implementation used.
*/
- Input* mInput;
+ SDLInput* mInput;
/**
* Holds the focus handler for the Gui.
diff --git a/src/gui/base/input.hpp b/src/gui/base/input.hpp
deleted file mode 100644
index 1643482d3..000000000
--- a/src/gui/base/input.hpp
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2011-2014 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/>.
- */
-
-/* _______ __ __ __ ______ __ __ _______ __ __
- * / _____/\ / /\ / /\ / /\ / ____/\ / /\ / /\ / ___ /\ / |\/ /\
- * / /\____\// / // / // / // /\___\// /_// / // /\_/ / // , |/ / /
- * / / /__ / / // / // / // / / / ___ / // ___ / // /| ' / /
- * / /_// /\ / /_// / // / // /_/_ / / // / // /\_/ / // / | / /
- * /______/ //______/ //_/ //_____/\ /_/ //_/ //_/ //_/ //_/ /|_/ /
- * \______\/ \______\/ \_\/ \_____\/ \_\/ \_\/ \_\/ \_\/ \_\/ \_\/
- *
- * Copyright (c) 2004 - 2008 Olof Naessén and Per Larsson
- *
- *
- * Per Larsson a.k.a finalman
- * Olof Naessén a.k.a jansem/yakslem
- *
- * Visit: http://guichan.sourceforge.net
- *
- * License: (BSD)
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * 3. Neither the name of Guichan nor the names of its contributors may
- * be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
- * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef GCN_INPUT_HPP
-#define GCN_INPUT_HPP
-
-#include "localconsts.h"
-
-class KeyInput;
-class MouseInput;
-
-namespace gcn
-{
- /**
- * Abstract class for providing functions for user input.
- *
- * Guichan contains implementations of Input for common
- * libraries like the Allegro library, the HGE library,
- * and the SDL library.
- * To make Guichan usable with other libraries, an Input
- * class must be implemented.
- *
- * @see AllegroInput, HGEInput, OpenLayerInput,
- * SDLInput
- */
- class Input
- {
- public:
- /**
- * Destructor.
- */
- virtual ~Input(){ }
-
- /**
- * Checks if the key queue is empty, or not.
- *
- * @return True if the key queue is empty,
- * false otherwise.
- */
- virtual bool isKeyQueueEmpty() A_WARN_UNUSED = 0;
-
- /**
- * Dequeues the key input queue.
- *
- * @return The first key input in the key input queue.
- */
- virtual KeyInput dequeueKeyInput() = 0;
-
- /**
- * Checks if the mouse queue is empyt, or not.
- *
- * @return True if the mouse queue is empty,
- * false otherwise.
- */
- virtual bool isMouseQueueEmpty() A_WARN_UNUSED = 0;
-
- /**
- * Dequeues the mouse input queue.
- *
- * @return The first mouse input in the mouse input queue.
- */
- virtual MouseInput dequeueMouseInput() = 0;
-
- /**
- * Polls all exsisting input. Called when input should
- * be polled. The function exists for compatibility reason
- * where some libraries need to poll input at a certain
- * logic rate.
- */
- virtual void _pollInput() = 0;
- };
-} // namespace gcn
-
-#endif // end GCN_INPUT_HPP
diff --git a/src/gui/sdlinput.cpp b/src/gui/sdlinput.cpp
index 21a8d3957..33c15f5c7 100644
--- a/src/gui/sdlinput.cpp
+++ b/src/gui/sdlinput.cpp
@@ -75,12 +75,12 @@
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#include "gui/sdlinput.h"
-
#include "sdlshared.h"
#include "input/inputmanager.h"
+#include "gui/sdlinput.h"
+
#include "render/graphics.h"
#ifdef USE_SDL2
diff --git a/src/gui/sdlinput.h b/src/gui/sdlinput.h
index 1a19e8790..3454f2d9f 100644
--- a/src/gui/sdlinput.h
+++ b/src/gui/sdlinput.h
@@ -75,16 +75,14 @@
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef GUI_SDLINPUT_H
-#define GUI_SDLINPUT_H
+#ifndef GUI_INPUT_H
+#define GUI_INPUT_H
#include "input/keyinput.h"
#include "input/mouseinput.h"
#include <SDL_events.h>
-#include "gui/base/input.hpp"
-
#include "input/mouseinput.h"
#include <queue>
@@ -145,9 +143,9 @@ namespace Key
} // namespace Key
/**
- * SDL implementation of Input.
+ * SDL implementation of SDLInput.
*/
-class SDLInput final : public gcn::Input
+class SDLInput final
{
public:
/**
@@ -170,21 +168,21 @@ public:
* only use SDL and plan sticking with SDL you can safely ignore this
* function as it in the SDL case does nothing.
*/
- void _pollInput() override final
+ void _pollInput()
{ }
KeyInput dequeueKeyInput2() A_WARN_UNUSED;
- KeyInput dequeueKeyInput() override final A_WARN_UNUSED
+ KeyInput dequeueKeyInput() A_WARN_UNUSED
{ return KeyInput(); }
- // Inherited from Input
+ // Inherited from SDLInput
- bool isKeyQueueEmpty() override final A_WARN_UNUSED;
+ bool isKeyQueueEmpty() A_WARN_UNUSED;
- bool isMouseQueueEmpty() override final A_WARN_UNUSED;
+ bool isMouseQueueEmpty() A_WARN_UNUSED;
- MouseInput dequeueMouseInput() override final A_WARN_UNUSED;
+ MouseInput dequeueMouseInput() A_WARN_UNUSED;
MouseInput dequeueMouseInput2() A_WARN_UNUSED;
@@ -220,4 +218,4 @@ protected:
bool mMouseInWindow;
};
-#endif // GUI_SDLINPUT_H
+#endif // GUI_INPUT_H