Browse Source

Platform: minor formatting updates.

pull/142/merge
Vladimír Vondruš 10 years ago
parent
commit
dc41cbbdb2
  1. 38
      src/Magnum/Platform/GlfwApplication.cpp
  2. 74
      src/Magnum/Platform/GlfwApplication.h

38
src/Magnum/Platform/GlfwApplication.cpp

@ -48,9 +48,9 @@ GlfwApplication::GlfwApplication(const Arguments& arguments, const Configuration
createContext(configuration);
}
GlfwApplication::GlfwApplication(const Arguments& arguments, std::nullptr_t)
: _context{new Context{NoCreate, arguments.argc, arguments.argv}},
_needsRedraw(true)
GlfwApplication::GlfwApplication(const Arguments& arguments, std::nullptr_t):
_context{new Context{NoCreate, arguments.argc, arguments.argv}},
_needsRedraw(true)
{
/* Save global instance */
_instance = this;
@ -196,20 +196,19 @@ void GlfwApplication::staticErrorCallback(int, const char* description) {
Error() << description;
}
GlfwApplication::InputEvent::Modifiers GlfwApplication::KeyEvent::getCurrentGlfwModifiers(GLFWwindow* window) {
static_assert(GLFW_PRESS == true && GLFW_RELEASE == false, "GLFW press and release constants do not correspond to bool values.");
auto GlfwApplication::KeyEvent::getCurrentGlfwModifiers(GLFWwindow* window) -> Modifiers {
static_assert(GLFW_PRESS == true && GLFW_RELEASE == false,
"GLFW press and release constants do not correspond to bool values");
Modifiers mods = (glfwGetKey(window, Int(Key::LeftShift)) || glfwGetKey(window, Int(Key::RightShift)))
? Modifiers{Modifier::Shift} : Modifiers{};
if(glfwGetKey(window, Int(Key::LeftAlt)) || glfwGetKey(window, Int(Key::RightAlt))) {
Modifiers mods;
if(glfwGetKey(window, Int(Key::LeftShift)) || glfwGetKey(window, Int(Key::RightShift)))
mods |= Modifier::Shift;
if(glfwGetKey(window, Int(Key::LeftAlt)) || glfwGetKey(window, Int(Key::RightAlt)))
mods |= Modifier::Alt;
}
if(glfwGetKey(window, Int(Key::LeftCtrl)) || glfwGetKey(window, Int(Key::RightCtrl))) {
if(glfwGetKey(window, Int(Key::LeftCtrl)) || glfwGetKey(window, Int(Key::RightCtrl)))
mods |= Modifier::Ctrl;
}
if(glfwGetKey(window, Int(Key::RightSuper))) {
if(glfwGetKey(window, Int(Key::RightSuper)))
mods |= Modifier::AltGr;
}
return mods;
}
@ -222,13 +221,12 @@ void GlfwApplication::mouseReleaseEvent(MouseEvent&) {}
void GlfwApplication::mouseMoveEvent(MouseMoveEvent&) {}
void GlfwApplication::mouseScrollEvent(MouseScrollEvent&) {}
GlfwApplication::Configuration::Configuration()
: _title("Magnum GLFW Application"),
_size(800, 600), _sampleCount(0),
_version(Version::None),
_windowFlags(WindowFlag::Focused),
_cursorMode(CursorMode::Normal)
{}
GlfwApplication::Configuration::Configuration():
_title{"Magnum GLFW Application"},
_size{800, 600}, _sampleCount{0},
_version{Version::None},
_windowFlags{WindowFlag::Focused},
_cursorMode{CursorMode::Normal} {}
GlfwApplication::Configuration::~Configuration() = default;

74
src/Magnum/Platform/GlfwApplication.h

@ -49,14 +49,14 @@ namespace Magnum { namespace Platform {
Application using GLFW toolkit. Supports keyboard and mouse handling with
support for changing cursor and mouse tracking and warping.
This application library is available only on desktop OpenGL (Linux, Windows,
OS X). It depends on **GLFW** library and is built if `WITH_GLFWAPPLICATION` is
enabled in CMake.
This application library is available on all platforms where GLFW is ported. It
depends on **GLFW** library and is built if `WITH_GLFWAPPLICATION` is enabled
in CMake.
## Bootstrap application
Fully contained base application using @ref GlfwApplication along with
CMake setup is available in `base-glfw` branch of
Fully contained base application using @ref GlfwApplication along with CMake
setup is available in `base-glfw` branch of
[Magnum Bootstrap](https://github.com/mosra/magnum-bootstrap) repository,
download it as [tar.gz](https://github.com/mosra/magnum-bootstrap/archive/base-glfw.tar.gz)
or [zip](https://github.com/mosra/magnum-bootstrap/archive/base-glfw.zip) file.
@ -266,9 +266,7 @@ class GlfwApplication {
static GlfwApplication* _instance;
GLFWwindow* _window;
std::unique_ptr<Platform::Context> _context;
bool _needsRedraw;
};
@ -297,8 +295,8 @@ class GlfwApplication::Configuration {
NoError = GLFW_CONTEXT_NO_ERROR,
#endif
Debug = GLFW_OPENGL_DEBUG_CONTEXT, /**< Debug context */
Stereo = GLFW_STEREO, /**< Stereo rendering */
Debug = GLFW_OPENGL_DEBUG_CONTEXT, /**< Debug context */
Stereo = GLFW_STEREO, /**< Stereo rendering */
};
/**
@ -329,8 +327,14 @@ class GlfwApplication::Configuration {
Minimized = 1 << 4, /**< Minimized window */
Floating = 1 << 5, /**< Window floating above others, top-most */
AutoIconify = 1 << 6, /**< Automatically iconify (minimize) if fullscreen window loses input focus */
Focused = 1 << 7, /**< Window has input focus */
/**
* Automatically iconify (minimize) if fullscreen window loses
* input focus
*/
AutoIconify = 1 << 6,
Focused = 1 << 7 /**< Window has input focus */
};
/**
@ -343,7 +347,7 @@ class GlfwApplication::Configuration {
enum class CursorMode: Int {
Normal = GLFW_CURSOR_NORMAL, /**< Visible unconstrained cursor */
Hidden = GLFW_CURSOR_HIDDEN, /**< Hidden cursor */
Diabled = GLFW_CURSOR_DISABLED, /**< Cursor hidden and locked window */
Diabled = GLFW_CURSOR_DISABLED /**< Cursor hidden and locked window */
};
/*implicit*/ Configuration();
@ -501,7 +505,7 @@ class GlfwApplication::InputEvent {
Shift = GLFW_MOD_SHIFT, /**< Shift */
Ctrl = GLFW_MOD_CONTROL, /**< Ctrl */
Alt = GLFW_MOD_ALT, /**< Alt */
AltGr = GLFW_MOD_SUPER, /**< AltGr */
AltGr = GLFW_MOD_SUPER /**< AltGr */
};
/**
@ -558,25 +562,25 @@ class GlfwApplication::KeyEvent: public GlfwApplication::InputEvent {
enum class Key: Int {
Unknown = GLFW_KEY_UNKNOWN, /**< Unknown key */
Up = GLFW_KEY_UP, /**< Up arrow */
Down = GLFW_KEY_DOWN, /**< Down arrow */
Left = GLFW_KEY_LEFT, /**< Left arrow */
Right = GLFW_KEY_RIGHT, /**< Right arrow */
F1 = GLFW_KEY_F1, /**< F1 */
F2 = GLFW_KEY_F2, /**< F2 */
F3 = GLFW_KEY_F3, /**< F3 */
F4 = GLFW_KEY_F4, /**< F4 */
F5 = GLFW_KEY_F5, /**< F5 */
F6 = GLFW_KEY_F6, /**< F6 */
F7 = GLFW_KEY_F7, /**< F7 */
F8 = GLFW_KEY_F8, /**< F8 */
F9 = GLFW_KEY_F9, /**< F9 */
F10 = GLFW_KEY_F10, /**< F10 */
F11 = GLFW_KEY_F11, /**< F11 */
F12 = GLFW_KEY_F12, /**< F12 */
Home = GLFW_KEY_HOME, /**< Home */
End = GLFW_KEY_END, /**< End */
PageUp = GLFW_KEY_PAGE_UP, /**< Page up */
Up = GLFW_KEY_UP, /**< Up arrow */
Down = GLFW_KEY_DOWN, /**< Down arrow */
Left = GLFW_KEY_LEFT, /**< Left arrow */
Right = GLFW_KEY_RIGHT, /**< Right arrow */
F1 = GLFW_KEY_F1, /**< F1 */
F2 = GLFW_KEY_F2, /**< F2 */
F3 = GLFW_KEY_F3, /**< F3 */
F4 = GLFW_KEY_F4, /**< F4 */
F5 = GLFW_KEY_F5, /**< F5 */
F6 = GLFW_KEY_F6, /**< F6 */
F7 = GLFW_KEY_F7, /**< F7 */
F8 = GLFW_KEY_F8, /**< F8 */
F9 = GLFW_KEY_F9, /**< F9 */
F10 = GLFW_KEY_F10, /**< F10 */
F11 = GLFW_KEY_F11, /**< F11 */
F12 = GLFW_KEY_F12, /**< F12 */
Home = GLFW_KEY_HOME, /**< Home */
End = GLFW_KEY_END, /**< End */
PageUp = GLFW_KEY_PAGE_UP, /**< Page up */
PageDown = GLFW_KEY_PAGE_DOWN, /**< Page down */
Space = ' ', /**< Space */
@ -664,7 +668,7 @@ class GlfwApplication::KeyEvent: public GlfwApplication::InputEvent {
RightCtrl = GLFW_KEY_RIGHT_CONTROL, /**< Right control */
RightAlt = GLFW_KEY_RIGHT_ALT, /**< Right alt */
RightSuper = GLFW_KEY_RIGHT_SUPER, /**< Right super */
Menu = GLFW_KEY_MENU, /**< Menu */
Menu = GLFW_KEY_MENU /**< Menu */
};
/** @brief Key */
@ -710,7 +714,7 @@ class GlfwApplication::MouseEvent: public GlfwApplication::InputEvent {
Button8 = GLFW_MOUSE_BUTTON_8, /**< Mouse button 8 */
WheelUp = GLFW_MOUSE_BUTTON_LAST + 1, /**< Mouse wheel up */
WheelDown = GLFW_MOUSE_BUTTON_LAST + 2, /**< Mouse wheel down */
WheelDown = GLFW_MOUSE_BUTTON_LAST + 2 /**< Mouse wheel down */
};
/** @brief Button */
@ -735,7 +739,6 @@ class GlfwApplication::MouseMoveEvent: public GlfwApplication::InputEvent {
friend GlfwApplication;
public:
/** @brief Position */
constexpr Vector2i position() const { return _position; }
@ -758,7 +761,6 @@ class GlfwApplication::MouseScrollEvent: public GlfwApplication::InputEvent {
friend GlfwApplication;
public:
/** @brief Scroll offset */
constexpr Vector2d offset() const { return _offset; }

Loading…
Cancel
Save