SFML - Simple and Fast Multimedia Library

SFML 3.0.2
Loading...
Searching...
No Matches
Mouse.hpp
Go to the documentation of this file.
1
2//
3// SFML - Simple and Fast Multimedia Library
4// Copyright (C) 2007-2025 Laurent Gomila (laurent@sfml-dev.org)
5//
6// This software is provided 'as-is', without any express or implied warranty.
7// In no event will the authors be held liable for any damages arising from the use of this software.
8//
9// Permission is granted to anyone to use this software for any purpose,
10// including commercial applications, and to alter it and redistribute it freely,
11// subject to the following restrictions:
12//
13// 1. The origin of this software must not be misrepresented;
14// you must not claim that you wrote the original software.
15// If you use this software in a product, an acknowledgment
16// in the product documentation would be appreciated but is not required.
17//
18// 2. Altered source versions must be plainly marked as such,
19// and must not be misrepresented as being the original software.
20//
21// 3. This notice may not be removed or altered from any source distribution.
22//
24
25#pragma once
26
28// Headers
30#include <SFML/Window/Export.hpp>
31
32#include <SFML/System/Vector2.hpp>
33
34
35namespace sf
36{
37class WindowBase;
38
43 namespace Mouse
44{
49 enum class Button
50{
51 Left,
52 Right,
53 Middle,
54 Extra1,
55 Extra2
56};
57
58// NOLINTNEXTLINE(readability-identifier-naming)
59 static constexpr unsigned int ButtonCount{5};
60
65 enum class Wheel
66{
67 Vertical,
68 Horizontal
69};
70
82[[nodiscard]] SFML_WINDOW_API bool isButtonPressed(Button button);
83
93[[nodiscard]] SFML_WINDOW_API Vector2i getPosition();
94
106[[nodiscard]] SFML_WINDOW_API Vector2i getPosition(const WindowBase& relativeTo);
107
121 SFML_WINDOW_API void setPosition(Vector2i position);
122
137 SFML_WINDOW_API void setPosition(Vector2i position, const WindowBase& relativeTo);
138} // namespace Mouse
139
140} // namespace sf
141
142
Vector2.hpp
Export.hpp
SFML_WINDOW_API
#define SFML_WINDOW_API
Definition Window/Export.hpp:42
sf::WindowBase
Window that serves as a base for other windows.
Definition WindowBase.hpp:63
sf::Mouse
Give access to the real-time state of the mouse.
Definition Mouse.hpp:44
sf::Mouse::isButtonPressed
bool isButtonPressed(Button button)
Check if a mouse button is pressed.
sf::Mouse::Button
Button
Mouse buttons.
Definition Mouse.hpp:50
sf::Mouse::Button::Extra1
@ Extra1
The first extra mouse button.
Definition Mouse.hpp:54
sf::Mouse::Button::Extra2
@ Extra2
The second extra mouse button.
Definition Mouse.hpp:55
sf::Mouse::Button::Right
@ Right
The right mouse button.
Definition Mouse.hpp:52
sf::Mouse::Button::Left
@ Left
The left mouse button.
Definition Mouse.hpp:51
sf::Mouse::Button::Middle
@ Middle
The middle (wheel) mouse button.
Definition Mouse.hpp:53
sf::Mouse::Wheel
Wheel
Mouse wheels.
Definition Mouse.hpp:66
sf::Mouse::Wheel::Vertical
@ Vertical
The vertical mouse wheel.
Definition Mouse.hpp:67
sf::Mouse::Wheel::Horizontal
@ Horizontal
The horizontal mouse wheel.
Definition Mouse.hpp:68
sf::Mouse::setPosition
void setPosition(Vector2i position)
Set the current position of the mouse in desktop coordinates.
sf::Mouse::ButtonCount
static constexpr unsigned int ButtonCount
The total number of mouse buttons.
Definition Mouse.hpp:59
sf::Mouse::getPosition
Vector2i getPosition()
Get the current position of the mouse in desktop coordinates.
sf
Definition AudioResource.hpp:36
sf::Vector2i
Vector2< int > Vector2i
Definition Vector2.hpp:208