100 Commits
Author SHA1 Message Date
josh bec2e913c0 Update rscons 2025-04-14 20:12:38 -04:00
josh 1252ed7879 Fix a few new D compilation errors 2022-04-12 09:20:03 -04:00
josh c9650aada7 Update rscons 2022-04-12 09:19:18 -04:00
josh 6f32d3f2fe Fix github URLs for security changes 2022-04-11 17:31:04 -04:00
josh 51b1b34d03 Remove C+ Change modules 2021-04-03 10:22:51 -04:00
josh 997cf5efe0 Add UndoBuffer class 2021-03-31 23:20:16 -04:00
josh b2bd75c2b1 Rename TextBuffer to DataBuffer 2021-03-19 19:14:34 -04:00
josh 394bbda32f Remove Timer C++ module 2021-03-18 14:12:43 -04:00
josh f13f8bd524 Add LineEndings.text() 2021-03-11 15:02:34 -05:00
josh 9f75d6c763 Verify UTF8 is detected encoding of empty buffer 2021-03-11 14:46:52 -05:00
josh 5af185f917 rm PagedBuffer 2020-12-20 10:41:48 -05:00
josh e102c0c6f6 Store icon in BGRA format so runtime conversion is not necessary. 2020-12-19 12:31:07 -05:00
josh 7678c00d25 Move icon. 2020-12-19 11:26:58 -05:00
josh 9723c19514 Set window title. 2020-12-19 11:20:32 -05:00
josh 42d1711bfb Set window icon. 2020-12-19 10:39:19 -05:00
josh 14b448d8fb Remove src-c files that have been ported. 2020-12-13 20:26:58 -05:00
josh a53b53e864 Add Gl.draw_rect(). 2020-12-10 20:40:03 -05:00
josh e51953445b gltk.Buffer constructor takes target parameter. 2020-12-10 20:28:49 -05:00
josh 64c3285fbc gltk.Buffer.set_buffer_data() can take an arbitrary array. 2020-12-10 20:26:58 -05:00
josh 24b7ee9f16 Add Gl class to manage OpenGL drawing operations for a Window. 2020-12-10 20:21:17 -05:00
josh 4775435df4 Add jes.gui.Window to own jes-related window functionality. 2020-12-09 21:51:44 -05:00
josh 23cfdb1273 Add FlatProgram and RectProgram. 2020-12-08 20:34:41 -05:00
josh e215485293 Convert gltk.Program to a class template to generate specialized program classes. 2020-12-07 23:43:42 -05:00
josh 816aca30ac Add gltk.Program.get_uniform_locations(). 2020-12-07 15:55:03 -05:00
josh 52d7eb5eab Allow passing shaders and attribute locations to Program constructor. 2020-12-07 15:40:11 -05:00
josh b16d6fa43f add gltk.Program.bind_attrib_location() 2020-12-07 14:17:37 -05:00
josh 858ce9f7b1 Glyph rendering working (test code; needs refactoring). 2020-12-06 15:32:47 -05:00
josh 4923eb1ab8 Fix OpenGL buffer data for Glyph rendering. 2020-12-06 15:30:15 -05:00
josh 2ab09b47bf Some work on rendering glyphs. 2020-12-04 17:58:34 -05:00
josh 6ff4bdcc11 Free the preloaded font glyphs. 2020-12-03 10:50:46 -05:00
josh 69f568cc7a remove Font.next_power_of_2() 2020-12-03 10:46:24 -05:00
josh 97e4dde563 jtk: Store event list as untranslated events from C to avoid threading issues. 2020-12-03 10:41:41 -05:00
josh 5385718e91 Add Gui class and move GUI logic from main module to it. 2020-12-03 10:00:34 -05:00
josh 19a1ae222a gltk: import other gltk modules in package 2020-12-03 09:47:52 -05:00
josh 9782ef2938 Create window on startup and run event loop. 2020-12-01 21:48:45 -05:00
josh 08f583e994 add initial gltk files 2020-11-29 22:03:47 -05:00
josh b3cb93612d Start on Font module. 2020-11-29 11:05:11 -05:00
josh 45bbf230a5 Add C Font module for FreeType interface. 2020-11-29 10:37:19 -05:00
josh 401eb1d960 Completed migrating Encoding to D. 2020-11-27 21:37:53 -05:00
josh 926ad3ec0d Add Encoding.encode() and Encoding.decode(). 2020-11-27 20:51:40 -05:00
josh 575589e5a3 mark some functions private 2020-11-27 19:54:52 -05:00
josh b0adb417a0 remove a few C++ modules that have been converted to D 2020-11-24 17:15:33 -05:00
josh 1b5a2d92af Add LineEndings module. 2020-11-24 16:57:51 -05:00
josh 97e01ab714 Fix Encoding detection of UTF-16. 2020-11-15 22:06:17 -05:00
josh bc21e746fb Start on some Encoding unit tests. 2020-11-15 22:01:55 -05:00
josh 047288ea3d Add some encoding test files. 2020-11-15 21:35:51 -05:00
josh 179690f177 Start on Encoding module. 2020-11-11 22:26:16 -05:00
josh 2db942f47d Replace GapBuffer with TextBuffer. 2020-11-10 19:56:58 -05:00
josh 581b83fe54 call jtk.quit() 2020-08-03 16:55:55 -04:00
josh 3f4a8709b5 pull in DerelictGL3 and load it 2020-08-03 16:53:22 -04:00
josh 56c20c4a36 jtk: indicate which Window had event; convert Event to class 2020-07-16 11:35:29 -04:00
josh a30b4b7ff8 fix Event structure alignment between C and D 2020-07-09 15:06:48 -04:00
josh acb25132e4 add jtk.quit() 2020-07-09 12:05:13 -04:00
josh d3203c7790 fix XInitThreads() error check 2020-07-09 11:04:07 -04:00
josh a0910191da add jtk.event.wait_event() 2020-07-08 14:14:29 -04:00
josh 303d387c20 add event thread and jtk.event.check_event() 2020-07-08 12:52:32 -04:00
josh 0963b80234 jtk.timer: make thread safe 2020-07-08 11:17:12 -04:00
josh 3f326a46f0 compile C sources with -Wall 2020-07-08 11:06:22 -04:00
josh ef036716b7 use a ulong instead of void * for window handle 2020-07-08 11:05:53 -04:00
josh 84b67e99b1 add jtk_wake() 2020-07-08 10:16:38 -04:00
josh 6cf36a852f jtk.c: support multiple threads 2020-07-07 16:25:12 -04:00
josh d3d6fd0fbf add jtk event functionality C backend 2020-06-30 17:16:34 -04:00
josh 7a381b87c5 compile with -Wall 2020-06-23 17:03:07 -04:00
josh 5741266dfb jes.core.gapbuffer: use D-style dynamic array syntax 2020-06-23 17:03:00 -04:00
josh 0678bd79f4 jtk: couple unsigned literals 2020-06-23 17:01:11 -04:00
josh 5119332adb jtk.timer: mark fields private 2020-06-23 16:57:51 -04:00
josh 273d0faa44 jtk.timer: specify functions with package-only access 2020-06-23 16:55:50 -04:00
josh eea524f106 jtk.timer: store times in microseconds, not milliseconds 2020-06-23 16:55:02 -04:00
josh a811a743b8 add jtk.timer module 2020-06-23 13:50:44 -04:00
josh 977b7cbf37 add jtk.time module 2020-06-23 12:34:16 -04:00
josh 09875f5d49 add jtk.Window.swap_buffers() 2020-06-23 12:25:13 -04:00
josh a51d6e2b29 add jtk/package.d 2020-06-23 12:24:28 -04:00
josh 97ab41580a add configure checks for needed libraries 2020-06-15 12:49:01 -04:00
josh 986800332c update rscons to 2.1.0 2020-06-15 12:46:28 -04:00
josh fef6a6f824 allow constructing/closing a jtk.window.Window 2019-12-30 22:35:41 -05:00
josh daf14dc4fc reorganize jtk into src/jtk 2019-12-30 22:21:10 -05:00
josh e4e280da4f add some jtk window functions 2019-12-29 20:41:48 -05:00
josh 4e6c392d44 add jtk.c 2019-12-16 22:23:02 -05:00
josh 18ed74615a update rscons to v2.0.2 2019-12-16 21:51:32 -05:00
josh 6349423329 add gapbuffer 2019-12-06 22:17:37 -05:00
josh f650256986 mv src/jes.d -> src/main.d 2019-12-03 12:38:06 -05:00
josh 3e5165361e fix Rsconscript 2019-12-03 12:32:05 -05:00
josh 846d81b60e Merge branch 'master' into d
switch from waf to rscons
2019-12-02 21:06:44 -05:00
josh ddb905351a switch from waf to rscons 2019-12-02 20:54:06 -05:00
josh 5d6c6b0e0f start on jtk module 2018-07-25 22:05:11 -04:00
josh e7acf05cc4 add src/jes.d 2018-07-25 21:33:41 -04:00
josh 663ed8c465 add Rsconsfile 2018-07-25 21:30:14 -04:00
josh 50cd9efd86 mv src src-c 2018-07-25 20:47:02 -04:00
josh a0b2f660a2 Refactor BufferView move cursor up/down by screen row to remove reference to current cursor row offset 2018-03-31 09:54:32 -04:00
josh 7637c3ae21 Add unit tests for BufferView moving cursor to top/middle/bottom of screen 2018-03-26 11:17:34 -04:00
josh c72308c9c3 For short files that fit entirely in the window, adjust H/M/L jump points to within the file 2018-03-26 11:04:56 -04:00
josh 65be7c3a6f Add Buffer::n_lines() 2018-03-26 10:34:19 -04:00
josh 8fbd7252de Default Buffer::write_to_file statistic output pointers to nullptr 2018-03-26 10:26:58 -04:00
josh 5d4ed598eb Add H, M, L commands to move cursor within screen 2018-03-26 10:25:07 -04:00
josh 785801a315 add INSTALL file 2018-03-24 10:18:43 -04:00
josh 93719bf042 Print number of lines and bytes written to file 2018-03-23 20:40:20 -04:00
josh 68b2c7e0e7 Show status errors in red 2018-03-23 20:19:41 -04:00
josh 14fd4b96f7 Add status message functionality 2018-03-23 20:13:35 -04:00
josh ec6d0eb8b7 Expand "~/" in paths to $HOME/ 2018-03-20 22:07:40 -04:00
josh d93953a929 Set buffer filename if it has none and it is written with an explicit filename 2018-03-20 21:23:11 -04:00