Vladimír Vondruš
4222d8a297
Platform: pass application configuration via reference, not pointer.
...
Removes the need for explicit new/delete calls.
13 years ago
Vladimír Vondruš
f0e9871f10
Platform: #undef another mess from Xorg headers.
13 years ago
Vladimír Vondruš
72e83c4f49
Platform: inline/virtual optimizations.
...
Removed redundant `inline` keyword, changed public (pure) virtual
destructors to protected nonvirtual ones.
13 years ago
Vladimír Vondruš
db71a23e3c
Bring whole Corrade namespace into Magnum namespace.
...
These projects are tightly interconnected anyway, this means a lot less
typing (yay!).
13 years ago
Vladimír Vondruš
11b3150a31
Support for ARB_robustness.
...
Robust *Framebuffer::read() access, ability to query robust buffer
access behavior in Context::flags(), ability to check graphics reset
status and reset notification policy in Renderer.
13 years ago
Vladimír Vondruš
f0958647c1
Platform: more intuitive argc/argv Arguments structure.
13 years ago
Vladimír Vondruš
dfdec44b01
Platform: portable application arguments specification.
...
Last PITA when porting to NaCl removed. Yay!
13 years ago
Vladimír Vondruš
cdcb37cd0c
Platform: better way to specify application configuration.
...
Each implementation of *Application::Configuration will have different
methods tailored to feature set of the underlying toolkit. Currently
each windowed application's Configuration has only window title (except
NaClApplication) and window size. WindowlessGlxApplication has empty
class. More features will come later. Also created introductionary
documentation for Platform namespace.
13 years ago
Vladimír Vondruš
508dd4d94d
Platform: have special MAGNUM_*APPLICATION_MAIN() for each class.
13 years ago
Vladimír Vondruš
38ec076eda
Minor code cleanup (unused parameters).
13 years ago
Vladimír Vondruš
6a5d75d1e4
Relicensing to MIT/Expat license, part 2: headers.
13 years ago
Vladimír Vondruš
0dea0d8aff
Platform: cleaned-up AbstractXApplication header.
13 years ago
Vladimír Vondruš
d0def6a763
Platform: reworked *XApplication events to mimic other implementations.
14 years ago
Vladimír Vondruš
d552a658c0
Platform: reworked GlutApplication events to mimic SDL and NaClApplication.
14 years ago
Vladimír Vondruš
7e66a09461
Marking all constructors explicit, except for matrix and vector classes.
...
It prevents unwanted implicit conversions from e.g. nullptr to Camera,
Vector2 to Physics::Point etc. By making all the constructors explicit
it is easier to routinely add the keyword to all new classes instead of
thinking about cases when to add and when not to.
14 years ago
Vladimír Vondruš
f0764cac4e
Doc++
...
How I could forgot @brief here?!
14 years ago
Vladimír Vondruš
43f6dbc72d
Using integer vector aliases all over the place.
14 years ago
Vladimír Vondruš
6c5d96d645
Adapted to Corrade changes.
14 years ago
Vladimír Vondruš
9505e0b3c1
Sdl2Application: added missing keys.
...
Now nearly full static compatibility with AbstractXApplication.
14 years ago
Vladimír Vondruš
4f9e13b2cb
Sdl2Application: implemented modifiers.
...
In SDL they are only for keyboard events and there is no support
for mouse modifiers like in X. Also reordered the enum in
AbstractXApplication to make it consistent.
14 years ago
Vladimír Vondruš
8789c31dec
Platform: macros for easier creation of application entry points.
14 years ago
Vladimír Vondruš
9cf48eee56
Platform: removed unneeded AbstractApplication base.
...
It's really not needed to have useless class defining only one function
(which wouldn't be used everywhere anyway).
14 years ago
Vladimír Vondruš
e1cd13021b
Platform/Application renaming.
...
Because with NaCl WindowContext doesn't make sense anymore, the classes
are now renamed:
* Contexts namespace -> Platform
* *WindowContext -> Application
Hopefully this is (one of) last crazy renaming runs.
14 years ago
Vladimír Vondruš
e9329745e8
Using `override` keyword in all places I can think of at this time.
14 years ago
Vladimír Vondruš
0646a6a12e
Contexts: updated default window names.
14 years ago
Vladimír Vondruš
141b20a612
Renamed Contexts::*Context to *ContextHandler.
...
Finally (and hopefully) consistent and non-confusing naming.
14 years ago
Vladimír Vondruš
4927be44cf
Context class must be instantiated after initializing extensions.
14 years ago
Vladimír Vondruš
a5ab6253b7
Contexts refactoring.
...
Contexts attached to window are now *WindowContext, pure contexts are
just *Context.
14 years ago
Vladimír Vondruš
fe62f547de
Reduced #includes in headers.
...
Magnum.h now doesn't include anything except OpenGL headers, thus
changes in Math library don't trigger recompilation of everything, but
only of things really depending on it.
Math constants moved to separate file for similar reasons, de-inlined
some functions to remove the need for some #includes.
14 years ago
Vladimír Vondruš
dd5635a3ab
AbstractXContext: added support for mouse motion event.
14 years ago
Vladimír Vondruš
f35a71a974
Doc++
14 years ago
Vladimír Vondruš
c83de594c2
AbstractXContext: ability to exit from main loop, added Esc key.
14 years ago
Vladimír Vondruš
1a6037ff5d
Adapted to Corrade changes, added operators for enum sets.
14 years ago
Vladimír Vondruš
8f3abe9dad
AbstractXContext: added modifiers to key and mouse events.
14 years ago
Vladimír Vondruš
b3a5e36c73
Doc++, code cleanup.
14 years ago
Vladimír Vondruš
0ca0f03f1c
Implemented AbstractXContext::redraw().
14 years ago
Vladimír Vondruš
e372a71636
Decoupled EGL interface from XEglContext.
...
New class EglInterface now handles only EGL, AbstractXContext is able to
take any OpenGL interface sublassed from AbstractGlInterface.
14 years ago
Vladimír Vondruš
0f579efe85
Undef some more Xlib nonsense.
14 years ago
Vladimír Vondruš
61cac0f1b3
Renamed EglContext to XEglContext.
...
X11 window and event handling will be used also elsewhere for desktop
OpenGL, reflect its presence in the class name.
14 years ago
Vladimír Vondruš
d03fe4d41d
Limited static polymorphism of EglContext and GlutContext.
...
If being careful, it's now possible to swap GlutContext with EglContext.
GlutContext doesn't have keyReleaseEvent() and many keys, but EglContext
doesn't have e.g. mouseMotionEvent().
14 years ago
Vladimír Vondruš
c74551e5c7
Doc++
14 years ago
Vladimír Vondruš
63f5637c1b
EglContext: MOAR keys!
14 years ago
Vladimír Vondruš
7669271b56
EglContext: forgot to revert this back.
14 years ago
Vladimír Vondruš
9ea8efe73b
EglContext: Handle window closing.
...
This is the most fucked up way to so fucking simple thing.
14 years ago
Vladimír Vondruš
ceb116c41c
EglContext: keyboard and mouse handling.
14 years ago
Vladimír Vondruš
59ca55abe0
Undefine None from Xlib.h to avoid conflicts (e.g. in Framebuffer).
14 years ago
Vladimír Vondruš
6b55ca96f3
Barebone X/EGL context.
14 years ago