Commit Graph

1946 Commits (bff434be531674091cc492b801bc91a4b9b34f77)

Author SHA1 Message Date
Yuval Dolev 7d2a91805b The clipboard is now read is frame and on changes and sent to the core. We're using polling to get the clipboard contents on macOS using a timer because there is no way to get a clipboard change notification on macOS (sigh...) 2020-01-13 03:05:44 +02:00
Yuval Dolev dbcb05d2d1 Fixed a performance issue regarding timers. Now we can start a single timer per step request. 2020-01-12 23:16:03 +02:00
Allen Webster 8c6335afb4 Stabilized scrolling in side-by-side single buffer editing 2020-01-11 18:00:38 -08:00
Allen Webster f8297dc036 Fixed paren-statement interaction in indentation logic 2020-01-11 17:20:40 -08:00
Yuval Dolev 020e2789d7 Fixed input bug where the input was not zeroed at the end of each frame. 2020-01-12 03:08:07 +02:00
Allen Webster 8e390db03c Optimizing auto-indent scanning logic 2020-01-11 16:27:34 -08:00
Allen Webster f1dd78f32a Only compute line indentation info at necessary points in the auto-indent routine 2020-01-11 15:45:28 -08:00
Yuval Dolev 7f00ead99c Added support for control keys. 2020-01-11 23:12:41 +02:00
Yuval Dolev 8e4ec5215f Added KeyStoke and KeyRelease events and fixed TextInput events. 2020-01-11 22:19:43 +02:00
Yuval Dolev 13970744b4 Fixed blending bug in the Metal renderer where the destination alpha was not updated which caused problems while rendering the program in full screen mode. 2020-01-10 18:57:08 +02:00
Allen Webster 2e21156e66 Add call convention for wgl functions 2020-01-09 18:52:53 -08:00
Allen Webster 65bfe172c4 4.1.1 2020-01-09 18:15:37 -08:00
Allen Webster d143a0e6d5 Fix indent on save bug 2020-01-09 18:12:20 -08:00
Allen Webster 76735e6f01 Change file name bug fixed 2020-01-09 17:56:01 -08:00
Yuval Dolev 520ab3dd27 Fixed animations. 2020-01-10 01:04:55 +02:00
Yuval Dolev 533819c7d4 Added mouse input. 2020-01-09 20:52:39 +02:00
Yuval Dolev 88c933acd2 Implemented the renderer abstraction for both OpenGL and Metal. 2020-01-09 02:36:37 +02:00
Yuval Dolev 912bcae8a7 Started working on an abstraction for the macOS renderer implementations. 2020-01-09 02:15:25 +02:00
Yuval Dolev 521fb82113 The Metal renderer is now fully functioning. 2020-01-08 21:44:47 +02:00
Yuval Dolev a18ef3197a Implemented my own vertex buffers management, also started working on textures. 2020-01-08 01:45:36 +02:00
Yuval Dolev a34d95b848 Metal renderer is now working (no textures yet). 2020-01-07 02:55:28 +02:00
Yuval Dolev efad772401 Work on metal renderer. Only semi-working for now. 2020-01-06 02:55:07 +02:00
Yuval Dolev 813ba593e3 Fixed flipped projection matrix. 2020-01-05 03:44:16 +02:00
Yuval Dolev b52f1cee24 Metal projection matrix test. 2020-01-05 03:13:47 +02:00
Yuval Dolev 0fceec19a9 Basic metal renderer (only rendering a triangle as of right now). 2020-01-04 03:24:52 +02:00
Allen Webster 2d78eade2f Added checker for missing documentation, 2020-01-02 16:00:34 -08:00
Allen Webster 13ee76effe Added hard exit API; fixed exit menus 2020-01-02 14:37:01 -08:00
Yuval Dolev 4e0549f270 OpenGL renderer abstraction. The OpenGL renderer is now in its own view that's separate from the main 4coder view which handles all input and updates. Also added a Window Delegate which handled window events. 2020-01-03 00:09:22 +02:00
Yuval Dolev d1b9977a63 Started working on high-dpi support. 2020-01-02 04:37:23 +02:00
Yuval Dolev 0420a9a852 Implemented resizing (seems to be really slow for some reason...) and basic input (actually we're not receiving user input yet, but the we're sending the app an empty input struct with only a few parameters being updated like if it's the first step.). 2020-01-02 02:21:33 +02:00
Yuval Dolev 6f827801e5 macOS platform layer initialization and very basic update functions. The 4coder beta has been rendered successfully for the first time on macOS! 2020-01-02 01:13:32 +02:00
Yuval Dolev debdda8184 Started working on getting the opengl renderer to work but encountered a few errors on the way... 2020-01-01 18:38:48 +02:00
Yuval Dolev 0cfb8b319c Work on setting up the opengl view. 2020-01-01 04:16:39 +02:00
Yuval Dolev 26fd4cd230 Finished most of the system api functions (a few will be implemented later). 2020-01-01 00:07:21 +02:00
Yuval Dolev 8c7600ba09 Implemented all system memory handling functions. 2019-12-31 23:36:12 +02:00
Yuval Dolev 9263a4a59f Implemented all system mutex and cv handling functions. 2019-12-31 13:14:05 +02:00
Yuval Dolev cbdc6a14e0 Implemented all system thread handling functions. 2019-12-31 03:22:50 +02:00
Yuval Dolev aff4a783e0 Implemented system_get_screen_scale_factor. 2019-12-31 01:56:12 +02:00
Yuval Dolev 912174e725 Experimentations with redrawing the opengl view. 2019-12-31 00:04:33 +02:00
Yuval Dolev 1d6be32462 Setup window and basic opengl view. 2019-12-30 03:21:21 +02:00
Yuval Dolev 50b8a64614 The projects compiles. 2019-12-30 02:33:30 +02:00
Yuval Dolev dc213307a9 Implemented all system wake up timer functions. 2019-12-30 00:34:53 +02:00
Yuval Dolev 76069e9ac1 Created basic Mac_Object structure and mac object allocation function. 2019-12-29 03:09:28 +02:00
Yuval Dolev 8020dcf385 Implemented system_now_time. 2019-12-29 00:11:34 +02:00
Yuval Dolev a91158ebf0 Implemented all system library handling functions. 2019-12-28 01:54:33 +02:00
Yuval Dolev da150cd322 Merged mac_4ed.cpp into mac_4ed.mm so now we have only 1 main file for the macOS platform layer. 2019-12-27 23:59:59 +02:00
Yuval Dolev 844dba9897 Merge yuval_macos_platform_layer_branch into yuval_macos_platform_layer. 2019-12-27 23:35:48 +02:00
Yuval Dolev 7e710eb3a0 Merge branch 'yuval_macos_platform_layer_branch' of https://bitbucket.org/4coder/4coder into yuval_macos_platform_layer_branch 2019-12-27 23:34:06 +02:00
Yuval Dolev 874024f8fb Added section comments to mac_4ed_functions.cpp 2019-12-27 23:30:46 +02:00
Allen Webster eb1bf82bec Finished API extension for padded layout rectangles giving more reliable xy navigation commands 2019-12-26 21:20:19 -08:00