Commit Graph

2998 Commits

Author SHA1 Message Date
Pietro Gagliardi 93537ebb83 Simpler hit-testing APIs based on Core Text's. Microsoft's PadWrite sample shows us how to implement these on both DirectWrite and the similarly-interfaced Pango. 2017-02-08 11:38:52 -05:00
Pietro Gagliardi 012ce92b71 And implemented the caret changes on Windows. 2017-02-07 19:55:21 -05:00
Pietro Gagliardi 3e4f99e0dd Notes for Windows equivalent of previous commits. Not actually done yet. 2017-02-07 19:42:00 -05:00
Pietro Gagliardi 01b6a16af6 And handled caret behavior on GTK+. 2017-02-07 19:14:51 -05:00
Pietro Gagliardi bbc03a489e Implemented the system on the hit-test example and on OS X. 2017-02-07 16:43:49 -05:00
Pietro Gagliardi a5dac81855 Refined the hit-test API some more. 2017-02-07 16:21:18 -05:00
Pietro Gagliardi ac9aefc43a Set up a new API specifically for caret positioning when hit-testing a point. Not yet implemented, just planned out. 2017-02-07 15:29:12 -05:00
Pietro Gagliardi e4ed1c337b And implemented the functions on Windows. Yeah I think I'll need cursor functions, perhaps. 2017-02-06 18:38:44 -05:00
Pietro Gagliardi 3d8bf01972 And implemented the hit-testing functions on GTK+. 2017-02-06 10:30:26 -05:00
Pietro Gagliardi c539362c15 Implemented the Pango hit test functions. Now to test. 2017-02-06 10:11:45 -05:00
Pietro Gagliardi 71176c2e33 Added the descriptive label to the caret. 2017-02-06 01:46:06 -05:00
Pietro Gagliardi 675e7594da More TODOs. 2017-02-06 00:26:47 -05:00
Pietro Gagliardi a1bebc82d8 And implemented caret motions in the hit test examples. 2017-02-06 00:26:22 -05:00
Pietro Gagliardi 64a1167e5f Added the blue caret to the drawtext example. Phew! 2017-02-05 21:44:48 -05:00
Pietro Gagliardi 0ae25c62ed Implemented the range-to-rect function on OS X. 2017-02-05 21:17:48 -05:00
Pietro Gagliardi b18cc88dce Boilerplate needed for implementing range-to-rect. 2017-02-05 20:42:52 -05:00
Pietro Gagliardi c336063b65 Decided what I need to do. 2017-02-05 20:26:59 -05:00
Pietro Gagliardi bb52275686 Corrected ambiguous wording in a comment. 2017-01-29 21:51:27 -05:00
Pietro Gagliardi ea93528cba IMPORTANT hidpi notes. 2017-01-29 03:21:15 -05:00
Pietro Gagliardi 9063b10691 More notes. 2017-01-28 15:33:17 -05:00
Pietro Gagliardi 7614d3e0ff More TODOs. 2017-01-27 15:39:24 -05:00
Pietro Gagliardi c9e7ee3a92 Reactivated the Core Text backend. 2017-01-24 23:13:44 -05:00
Pietro Gagliardi 8ff01c5034 Ugh 2017-01-24 17:15:57 -05:00
Pietro Gagliardi 8d3c68d7f0 Moved the AppKit text drawer out of the way for now. One last experiment first; didn't seem to matter :S 2017-01-24 17:12:44 -05:00
Pietro Gagliardi 877ffa5f89 More attempts. Ugggggh. 2017-01-24 10:36:13 -05:00
Pietro Gagliardi d1e2b17f6e Attempted to the layout er I mean attempted to define the ascent, desceitn, er descent, and leading for the NSLayoutManager based code AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA. 2017-01-24 01:04:08 -05:00
Pietro Gagliardi 1ca9a28f2d More work. 2017-01-23 15:07:28 -05:00
Pietro Gagliardi 08f2085f41 Quick fix. 2017-01-23 14:31:39 -05:00
Pietro Gagliardi b19f4cf251 Finished writing a NSLayoutManager-based text system. Not quite perfect yet, but we're getting somewhere! 2017-01-23 11:43:03 -05:00
Pietro Gagliardi 4e2dc90f4f Started an experimental port from Core Text to Cocoa's typesetting system, since that seems to produce more sensible results (and is somewhat easier to use...). We lose per-line spacing though :/ 2017-01-23 01:28:53 -05:00
Pietro Gagliardi 7eba767ffb Temporarily turning off excess text for magnification tests. 2017-01-21 18:27:03 -05:00
Pietro Gagliardi 313905230d Ugh, Core Text and NSLayoutManager produce inconsistent output :| 2017-01-21 15:22:19 -05:00
Pietro Gagliardi d8316790a0 More notes. 2017-01-21 10:21:39 -05:00
Pietro Gagliardi f0b9ff9aba Fixed multifragment lines on Windows, again with the help of the PadWrite sample. 2017-01-21 09:39:53 -05:00
Pietro Gagliardi 4de8d4402f More TODOs. 2017-01-20 23:15:10 -05:00
Pietro Gagliardi 351b3b6077 Added some debugging for that DirectWrite RTL stuff. 2017-01-20 22:39:37 -05:00
Pietro Gagliardi bbed231324 Fixed up misused Unicode. 2017-01-20 22:25:37 -05:00
Pietro Gagliardi c720e8147b Figured out what's going on. No clue how to fix it. 2017-01-20 20:57:20 -05:00
Pietro Gagliardi 339bdfc89b Started a hit-test and grapheme boundary test. Looks like we're not quite out of the woods with DirectWrite just yet. 2017-01-20 20:38:18 -05:00
Pietro Gagliardi 87b7d5b4b7 Decided to remove uiDrawTextLayoutByteIndexToGraphemeRect(); the Range one later on handles it. Now we can do the hit testing functions! 2017-01-20 19:34:16 -05:00
Pietro Gagliardi fc7fcd9f05 And implemented metrics stuff on Windows. 2017-01-20 18:09:06 -05:00
Pietro Gagliardi 6ccf436206 Implemented Pango text metrics and expanded the drawtext basic page to draw metrics. Works on both Pango and OS X; DirectWrite comes next. 2017-01-20 16:36:44 -05:00
Pietro Gagliardi 6ef6ed8cde Expanded the drawtext example to allow for multiple examples and options in the examples. Our old makefiles wouldn't allow examples to be spread across multiple files like this, so yay cmake? 2017-01-20 13:25:21 -05:00
Pietro Gagliardi 2d09f22932 Added a debugging guide for Windows. Will have to investigate this more, because I can't find any information online that suggests Direct2D should not respect clipping when drawing text :S Also more TODOs. 2017-01-20 12:46:00 -05:00
Pietro Gagliardi 88ea7c4665 Fixed runtime errors. Yay it works on all platforms now! Also more TODOs. Now the real work is getting the rest of the functionality in. 2017-01-20 04:34:15 -05:00
Pietro Gagliardi c0781a13ae Fixed compile errors. Jesus.
Runtime errors next.
2017-01-20 03:24:06 -05:00
Pietro Gagliardi cac390a821 Wrote much of the new text layout code on Windows. Now to test. 2017-01-19 21:13:03 -05:00
Pietro Gagliardi f7121774e1 Added some TODOs and started the work necessary for the Windows text system migration... which is gonna hurt. 2017-01-17 23:25:26 -05:00
Pietro Gagliardi 5444f76bd3 Started implementing the new text layout stuff on GTK+. The drawtext example works. 2017-01-17 21:06:45 -05:00
Pietro Gagliardi 7f270942a7 And fixed errors. Woo, it works!!!!! 2017-01-17 13:54:23 -05:00