Commit graph

813 commits

Author SHA1 Message Date
Glenn Watson 1755568b30 Fix a few more string memory issues. 2014-10-28 13:33:04 +10:00
Tomaka17 0392dc697a Fix default window name 2014-10-27 13:10:10 +01:00
Tomaka17 f7a50c162c Bugfix in swap interval for win32 2014-10-27 13:09:36 +01:00
tomaka a6bc0b0ba0 Merge pull request #72 from tomaka/vsync
Add `with_vsync` to WindowBuilder, plus the win32 implementation
2014-10-27 09:24:31 +01:00
tomaka 60e9ba4feb Merge pull request #74 from glennw/x11-key-events
Add backspace event and map some more keys on x11.
2014-10-27 07:43:02 +01:00
tomaka 391c42d177 Merge pull request #76 from glennw/fix-x11-window-res
Only reject modes based on resolution when using fullscreen. This fixes ...
2014-10-27 07:30:28 +01:00
Glenn Watson 84cd668bb6 Add backspace event and map some more keys on x11. 2014-10-27 16:29:32 +10:00
tomaka 18d9b493d7 Merge pull request #78 from glennw/x11-wheel-events
Add support for mouse wheel events on x11.
2014-10-27 07:25:30 +01:00
tomaka 32eba16994 Merge pull request #77 from glennw/x11-modifiers
Add support for keyboard modifiers on x11.
2014-10-27 07:20:00 +01:00
Glenn Watson 7800b14749 Fix bad memory being passed (due to going out of scope) to set title on X11. 2014-10-27 15:00:06 +10:00
Glenn Watson 8fee1950c6 Add support for mouse wheel events on x11. 2014-10-27 14:59:19 +10:00
Glenn Watson 22b434bf1d Only reject modes based on resolution when using fullscreen. This fixes creating a window that is not the same resolution as an existing video mode. 2014-10-27 14:58:04 +10:00
Glenn Watson e19dd83925 Add support for keyboard modifiers on x11. 2014-10-27 14:57:19 +10:00
Tomaka17 8249e545f8 Add with_vsync to WindowBuilder, plus the win32 implementation 2014-10-26 16:35:24 +01:00
tomaka fa99f0e701 Revert "Add platform_display impls for win32 and android" 2014-10-25 10:40:27 +02:00
Tomaka17 0eda82c28f Add platform_display impls for win32 and android
Fix the cocoa function
2014-10-24 12:54:58 +02:00
tomaka 2c9eaf8651 Merge pull request #65 from glennw/x-threads
Add an interface for providing system wide initialization options to the windowing system.
2014-10-24 12:31:33 +02:00
Glenn Watson 97c471dc05 Add an interface for providing system wide initialization options to the windowing system.
This allows setting up Linux based systems which use multithreaded OpenGL contexts.
2014-10-24 19:58:19 +10:00
tomaka fe8646c556 Merge pull request #66 from glennw/platform_data
Add accessor for underlying display handle on Linux.
2014-10-24 10:19:35 +02:00
Glenn Watson 21e3ff99fa Make platform data function as unsafe. 2014-10-24 18:12:03 +10:00
Glenn Watson 5693fbcce3 Add accessor for underlying display handle on Linux. Although unimplemented on other platforms, this applies to at least android as well. 2014-10-24 15:20:25 +10:00
Glenn Watson 80e4fa9ad8 Fix closing X display in get_dimensions 2014-10-24 14:13:19 +10:00
David Partouche f86af01a99 Added the Alt key modifier 2014-10-23 18:01:09 +02:00
David Partouche 6f46c0c2dd Added the modifiers key as input 2014-10-23 17:30:17 +02:00
David Partouche 271b688910 Fixed switch from atomics to atomic in rust 2014-10-23 17:30:16 +02:00
David Partouche 86e8480550 Added the KeyPress and KeyRelease events 2014-10-23 17:30:16 +02:00
David Partouche dad539114d Added ReceivedCharacter event for cocoa 2014-10-23 17:30:16 +02:00
David Partouche ba8f55547f Added is_closed to osx window 2014-10-23 17:30:16 +02:00
David Partouche 421beefe67 Added mose move event 2014-10-23 17:30:16 +02:00
David Partouche 5969cfe886 Fixed a compilation error: setContentview changed setContentView_ 2014-10-23 12:04:39 +02:00
Tomaka17 2ff393fe62 Update for rustc and gl-rs 2014-10-22 11:23:21 +02:00
Tomaka17 0d0c14e6ec Update for gl-rs 2014-10-21 08:11:08 +02:00
Pierre Krieger bb22087d1c Use gl-rs's GLX bindings for x11 2014-10-13 11:36:01 +02:00
Tomaka17 9e9a3ae03a Fix win32 window not closing when destroying it 2014-10-11 20:52:48 +02:00
Tomaka17 64bbc4965f Fix win32 window not having a destructor in headless mode 2014-10-11 20:40:15 +02:00
Tomaka17 cdee854d2e Fix bug with 64bits rustc 2014-10-11 20:23:33 +02:00
Tomaka17 cb32e64b72 Fix warnings while compiling for win32 2014-10-11 17:58:17 +02:00
David Partouche a2df6a8699 Changed statics to uppercase 2014-10-11 12:38:34 +02:00
David Partouche 10f625c2c8 Fixed static uppercase warning 2014-10-11 12:04:48 +02:00
Tomaka17 bfbc462511 Change implementations import system 2014-10-11 11:06:21 +02:00
Tomaka17 c316c86e7c Update for rustc f9fc49c06 2014-10-10 00:07:08 +0000 2014-10-10 17:52:47 +02:00
Tomaka17 e565bfeb13 Implement headless rendering 2014-10-09 15:55:42 +02:00
DavidPartouche dc80f57bc2 Fixed a space missing 2014-10-06 18:37:06 +02:00
David Partouche 989fd1b505 Added events handling for left/right mouse clicking 2014-10-06 18:23:31 +02:00
David Partouche db578e6e1c Refactored window initialisation code for cocoa, making it more memory safe 2014-10-06 18:23:31 +02:00
David Partouche c38110cac7 Cocoa opens a window with OpenGL context inside 2014-10-06 18:23:31 +02:00
Pierre Krieger fe245e2929 Fix warnings 2014-10-05 15:54:37 +02:00
Tomaka17 ea957ce1d7 Fix compilation warnings 2014-09-23 08:01:18 +02:00
DavidPartouche 6d3d84ef75 Use the correct monitor when fullscreen for X11 2014-09-20 11:18:03 +02:00
DavidPartouche 4222d12e67 Added output to get_name for x11 monitors 2014-09-19 20:30:15 +02:00
DavidPartouche 906324e267 Get the monitors attached to the display, and their resolution for X11 2014-09-19 20:30:15 +02:00
DavidPartouche 6f47e6ff8c Changed is_fullscreen to monitor.is_some() 2014-09-19 20:30:13 +02:00
David Partouche 55ebd4935e Added fullscreen support for X11 2014-09-19 20:29:28 +02:00
DavidPartouche ac74db979c Get the monitors attached to the display, and their resolution for X11 2014-09-19 20:28:14 +02:00
DavidPartouche bd3b06e1a5 Changed is_fullscreen to monitor.is_some() 2014-09-19 20:28:11 +02:00
David Partouche b149fca83d Added fullscreen support for X11 2014-09-19 20:26:41 +02:00
tomaka 1ae81267f5 Merge pull request #35 from evant/master
Make x11 keyboard repeat detectable
2014-09-16 07:53:20 +02:00
Evan Tatarka bcd3da1fcd make x11 keyboard repeat detectable 2014-09-15 19:11:23 -04:00
Tomaka17 991dc50a31 Remove unnecessary win32 linkage 2014-09-15 13:08:35 +02:00
Tomaka17 ee2349f272 Fix warnings in win32 ffi 2014-09-15 12:09:17 +02:00
Tomaka17 ce052484f7 Remove some unused imports 2014-09-13 09:04:47 +02:00
Tomaka17 f3e0c57158 Use gl_generator to generate EGL bindings for Android 2014-09-13 09:01:21 +02:00
Tomaka17 2af367b55c Use the gl_generator macro to generate the bindings for WGL 2014-09-12 15:51:43 +02:00
Tomaka17 3043cb2848 Remove old "egl" module 2014-09-12 15:20:59 +02:00
Tomaka17 0bb82e8467 Add basic support for Android 2014-09-11 18:28:07 +02:00
Tomaka17 d870fa7ffa Remove call to glViewport after win32 initialization 2014-08-22 11:26:47 +02:00
Tomaka17 d6fec79334 Cleanup temporary objects in case of error during creation on win32
See #10
2014-08-22 11:26:00 +02:00
Tomaka17 5c92587442 Fix & add some comments for win32 2014-08-22 11:21:12 +02:00
Tomaka17 6b45d1ca25 Not specifiying dimensions on win32 now results in CW_USEDEFAULT
Close #11
2014-08-22 11:19:19 +02:00
Tomaka17 761d82cd60 Remove forgotten debugging println
Closes #26
2014-08-22 10:57:31 +02:00
DavidPartouche 44c15bf6e6 Fixed broken build with latest rust update (use 'foo' = 'bar' syntax error) 2014-08-19 18:18:59 +02:00
Tomaka17 24dbe322f7 Track rust nightly 2014-08-15 16:12:40 +02:00
Tomaka17 4c1503dc32 Win32: no longer fails when calling swap_buffers on a closed window 2014-08-15 15:34:30 +02:00
Tomaka17 ae65b423dd Implement new events system 2014-08-13 17:23:03 +02:00
Tomaka17 3aab801f29 Implement Default for Window 2014-08-13 14:52:12 +02:00
Tomaka17 cd3fc3075a Fix #22
Thanks to @Anthiste
2014-08-12 21:21:06 +02:00
Tomaka17 32e9b5062c Add failure if SwapBuffers returns an error 2014-08-12 17:04:12 +02:00
Tomaka17 a8c056f83b Fixed compilation broken by #837efc54 2014-08-12 16:55:56 +02:00
Tomaka17 837efc5460 Fix attempt for #22 2014-08-12 11:01:18 +02:00
Tomaka17 53b9d6398c Remove dummy context creation for X11 2014-08-12 09:42:48 +02:00
Tomaka17 f452999b8c Minor fix in consistency for #[cfg]s 2014-08-12 09:17:23 +02:00
Tomaka17 391c4e525c Now using compile_msg crate instead of static_assert 2014-08-12 09:16:08 +02:00
Tomaka17 87d62e5b6f get_proc_address now returns a libc::c_void 2014-08-11 10:32:33 +02:00
Tomaka17 5f1d8dbedf Add flags when choosing pixel format 2014-08-07 18:51:27 +02:00
Tomaka17 acb0ab7cac Add default title for windows 2014-08-07 18:49:47 +02:00
Tomaka17 61781cf209 Call glViewport on windows init for win32
See #14
2014-08-07 18:48:34 +02:00
Pierre Krieger 01fd8b1d9e Now calling glViewport on X11 when the window is created
See #14
2014-08-07 18:13:52 +02:00
Pierre Krieger e567d7f4fd set_position now takes ints
Fix #12
2014-08-07 18:07:48 +02:00
Pierre Krieger 3f69cbb189 Fix two warnings on X11 2014-08-07 18:05:51 +02:00
Pierre Krieger cbf07d3190 Add some error detection 2014-08-07 18:05:18 +02:00
Pierre Krieger d3e3590b84 Fix glXCreateContextAttrib always null 2014-08-07 18:03:56 +02:00
Pierre Krieger 76ebf39bcd Merge branch 'master' of https://github.com/tomaka/gl-init-rs 2014-08-07 17:54:04 +02:00
Pierre Krieger 5d997b618f Cleaner GL creation on X11 2014-08-07 17:53:41 +02:00
Pierre Krieger 2184e5e578 Minor style fix in X11 2014-08-07 17:36:48 +02:00
Pierre Krieger c7aa219ef1 Now using glXChooseFBConfig 2014-08-07 17:35:26 +02:00
Tomaka17 d2bd19bc21 Doc now ignored for doctest 2014-08-07 09:33:28 +02:00
Felix S. Klock II f1993be9ea Fix bugs from f4fb699b52 2014-08-03 18:30:31 +02:00
Tomaka17 d574f6f1bb Fix GL context not being destroyed on win32 2014-08-03 17:33:48 +02:00
Tomaka17 3c9565ad25 Fix closed flag not being immediatly set on win32 2014-08-03 17:27:48 +02:00
Tomaka17 48632619c9 Add static assert for platform not supported 2014-08-03 10:30:04 +02:00
Tomaka17 f4fb699b52 Add dummy implementation for OS/X 2014-08-03 09:25:30 +02:00
Tomaka17 52cccb8dda Add doc to crate root 2014-08-02 20:49:48 +02:00
Pierre Krieger eee9e298ba Implement set_window_position for x11 2014-08-02 12:47:32 +02:00
Tomaka17 d08c94daac Remove Iconified and NeedRefresh events 2014-08-02 12:43:48 +02:00
Tomaka17 2aeec39156 Remove #[exprimental] from make_current 2014-08-02 12:32:08 +02:00
Tomaka17 0152099c91 Correctly handling pixel format and fullscreen resolution on Win32 2014-08-02 12:23:05 +02:00
Tomaka17 b0d9d0b87f Dimensions will now match the monitor's in case of fullscreen 2014-08-02 11:23:32 +02:00
Tomaka17 abceca1121 Add get_dimensions() to MonitorID 2014-08-02 11:17:49 +02:00
Tomaka17 dbaef704ad Fix docs for Window 2014-08-02 11:07:29 +02:00
Tomaka17 bfc5d3e63d with_monitor -> with_fullscreen 2014-08-02 11:04:48 +02:00
Tomaka17 8c074af9fc Add support for specific OpenGL version for Win32 2014-08-02 11:03:09 +02:00
Tomaka17 49b0a20170 Now passing WindowBuilder to implwin::Window::new 2014-08-02 10:42:17 +02:00
Tomaka17 5dda167021 Add iterators for events and WindowBuilder 2014-08-02 08:29:37 +02:00
Tomaka17 959613870c Now using wglCreateContextAttribs when available 2014-08-02 00:01:45 +02:00
Tomaka17 21c8ffab80 Mark hints as deprecated 2014-08-01 23:22:29 +02:00
Tomaka17 c1ecc06baf Change the RegisterClass code.
Prevents an issue when creating multiple contexts.
2014-08-01 23:12:46 +02:00
Tomaka17 d93cea808d Add documentation to the Win32 implementation 2014-08-01 23:02:26 +02:00
Tomaka17 19b8474c4a Window is no longer NoSend 2014-07-31 20:56:56 +02:00
Tomaka17 14c59e8d81 Merge branch 'master' of http://github.com/tomaka/gl-init-rs 2014-07-31 20:55:55 +02:00
Tomaka17 fd20346829 Put GetMessage in the same thread as the window creation.
Fixes #6
2014-07-31 20:55:30 +02:00
Tomaka17 91b0eeae8d Split win32/mod.rs 2014-07-31 20:14:36 +02:00
Pierre Krieger 26fec195d5 Implement ReceivedCharacter for X11 2014-07-31 18:44:44 +02:00
Pierre Krieger 59b4d23d58 Add mouse buttons press/release events for X11 2014-07-31 17:33:46 +02:00
Pierre Krieger 0d45c7fcb4 Fix warning in X11 ffi 2014-07-31 17:25:56 +02:00
Pierre Krieger 0c76ff8771 Add get_position and get_inner_size for X11 2014-07-31 17:01:58 +02:00
Pierre Krieger 37c5b5446b Add some keyboard events for X11 2014-07-31 16:46:29 +02:00
Tomaka17 d9d293667a Add monitor support for win32 2014-07-31 11:13:40 +02:00
Tomaka17 db8955a9d8 Add API for monitors 2014-07-31 10:02:01 +02:00
Tomaka17 8911e162ce MonitorID now defined by the implementations 2014-07-31 09:42:50 +02:00
Tomaka17 270e290af9 make_current() is now unsafe 2014-07-30 18:12:39 +02:00
Tomaka17 a9a42bd2ec Add draft for EGL 2014-07-30 17:13:30 +02:00
Tomaka17 ca89748414 Minor fix in docs 2014-07-30 14:18:31 +02:00
Tomaka17 17ad7ef50e Add docs to lib.rs 2014-07-30 14:13:42 +02:00
Tomaka17 6d9c5eb2bd should_close() renamed to is_closed() 2014-07-30 13:29:28 +02:00
Tomaka17 aa7d88dbda Fix bad events 2014-07-30 13:11:49 +02:00
Tomaka17 838cc2b325 Window getters now return an Option in case where the Window has been closed 2014-07-30 13:10:17 +02:00
Pierre Krieger 67349d717a Better events handling on X11 2014-07-28 15:06:38 +02:00
Pierre Krieger c1da2b1273 Work on input support for X11 2014-07-28 14:41:12 +02:00
Pierre Krieger 433c5b956e Implement CursorPositionChanged event for X11 2014-07-28 13:25:28 +02:00
Pierre Krieger 5764b9c243 Implement resize events on X11 2014-07-28 13:16:55 +02:00
Tomaka17 1f0999e6a0 Implement get_position for win32 and fix interface 2014-07-27 22:46:30 +02:00
Tomaka17 14a697b272 Implement get_*_size() for win32 2014-07-27 22:36:55 +02:00
Tomaka17 d4e334aecb get/set_size() -> get/set_inner/outer_size() 2014-07-27 22:36:28 +02:00
Tomaka17 0d122cec47 Implement fullscreen for win32 2014-07-27 21:21:50 +02:00
Tomaka17 d824fb94db Draft for monitor API 2014-07-27 20:41:25 +02:00
Tomaka17 6133e17b9a Add moved events for win32 2014-07-27 20:08:31 +02:00
Tomaka17 1e615b59a6 Better events handling for win32 2014-07-27 19:58:27 +02:00
Tomaka17 7a8e7a7922 Implement focus events for win32 2014-07-27 19:45:29 +02:00
Tomaka17 0103fb833e Remove FramebufferSizeChanged event 2014-07-27 19:45:02 +02:00
Tomaka17 f5080a2b29 Implement mouse clicks on win32 2014-07-27 19:41:02 +02:00
Tomaka17 a28282ef5f Implement Pressed and Released 2014-07-27 18:55:14 +02:00
Tomaka17 754a6ef60f Implement ReceivedCharacter on win32 2014-07-27 18:39:22 +02:00
Tomaka17 c67ab381bf Fix events handling on win32 2014-07-27 18:35:42 +02:00
Pierre Krieger 24baf4d104 Add some events 2014-07-27 17:06:03 +02:00
Tomaka17 758fd069c6 Remove some reliquate comment 2014-07-27 16:11:23 +02:00
Pierre Krieger f29b2f91e1 Now using dimensions 2014-07-27 15:54:48 +02:00
Pierre Krieger 356394cc75 Better cleanup in X11 destruction 2014-07-27 15:49:43 +02:00
Pierre Krieger bd0ae7476c Work on X11 events 2014-07-27 15:21:42 +02:00
Pierre Krieger 5aa72279aa Window is now NoSend 2014-07-27 15:11:59 +02:00
Pierre Krieger 4028b925d3 X11 implementation 2014-07-27 15:10:58 +02:00
Tomaka17 bf2773c233 Temporarily remove NeedRefresh event from win32 2014-07-27 13:10:59 +02:00
Tomaka17 13b79ffaaf Cleanup crate root 2014-07-27 12:59:45 +02:00
Tomaka17 1cc0447c5e Initial commit 2014-07-27 11:41:26 +02:00