Commit Graph

3423 Commits

Author SHA1 Message Date
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
l0calh05t b2ce7c8794 Fix release build on MSVC.
The /RTC* flags conflict with all optimizations, therefore they should only be added when building the Debug configuration.
2017-01-22 13:46:34 +01: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
Pietro Gagliardi 907d7c5830 Added the beginning of a text-drawing example (since I would need to heavily change the tester to test these things; hopefully in the future the example will be much more sophisticated). Time to fix segfaults! 2017-01-17 13:30:00 -05:00
Pietro Gagliardi 7bda3baee3 Fixed build errors. DOES IT WORK?!?!?!?!?!?!?!?! 2017-01-17 13:05:40 -05:00
Pietro Gagliardi 794d30154c And rewrote drawtext.m based around the new Core Text research. 2017-01-17 12:02:42 -05:00
Pietro Gagliardi e63a42a290 Okay, now that I know what I'm doing, let's make the line metrics struct useful again. 2017-01-17 02:17:12 -05:00
Pietro Gagliardi e32341b24b More work. 2017-01-07 20:09:44 -05:00
Pietro Gagliardi 1bd2ca22c2 Some more work on the new Cocoa text drawing code. 2017-01-06 23:53:23 -05:00
Pietro Gagliardi 6212ac7238 And integrated the rest of our important tests in. 2017-01-05 21:36:07 -05:00
Pietro Gagliardi 747a0bbfad More TODOs. 2017-01-05 17:56:47 -05:00
Pietro Gagliardi 3910ff1a13 Resolved Core Text pain by not even thinking about lines in terms of boxes. 2017-01-05 17:55:05 -05:00
Pietro Gagliardi dfaf640101 More work. Core Text chaos has resurged... 2017-01-04 23:50:08 -05:00
Pietro Gagliardi f147edf949 More work. 2017-01-03 23:59:23 -05:00
Pietro Gagliardi bab798543f Wrote the new font matching code. This is taken from the old code, but cleaned up considerably and updated with new knowledge. 2017-01-03 13:42:12 -05:00
Pietro Gagliardi 4318785eb2 More drawtext.m work. I was wrong; I'll need to do the trait matching anyway. Ugh. 2017-01-03 12:18:17 -05:00
Pietro Gagliardi 31274bcbd2 Started implementing the new attributed string system on OS X. 2017-01-02 23:53:31 -05:00
Pietro Gagliardi 30ca879c14 More API stuff. 2017-01-02 20:11:15 -05:00
Pietro Gagliardi e409943a50 One more support method before I can actually implement uiDrawTextLayout. Still need to figure out how I'm going to deal with fonts... 2016-12-23 14:01:09 -05:00
Pietro Gagliardi dfffc4c851 Started the API definition of the new uiDrawTextLayout. 2016-12-23 12:24:20 -05:00
Pietro Gagliardi 4f6ed98e40 And integrated the new attribute list implementation fully. 2016-12-23 00:31:11 -05:00
Pietro Gagliardi 5c1dfbd86f Got rid of the old attribute code and integrated exp_attrdll.c into attrstr.c. I'll rename the file to attrlist.c later. 2016-12-22 14:33:30 -05:00
Pietro Gagliardi ab8aa9266e Finished filling in exp_attrdll.c. I think this will stay. 2016-12-22 14:22:01 -05:00
Pietro Gagliardi 0078615662 More attribute list work. 2016-12-22 13:05:36 -05:00
Pietro Gagliardi ecc7b70a6b And FINALLY implemented that function :D 2016-12-20 16:16:52 -05:00
Pietro Gagliardi 28ca02673b Even more trying to reason about the algorithm. 2016-12-20 14:47:11 -05:00
Pietro Gagliardi 4f1ba0df84 Plotted out at a high level how insertion with attribute borrowing should work. 2016-12-20 14:24:26 -05:00
Pietro Gagliardi 643e2937c4 More stuff I guess? 2016-12-19 17:15:48 -05:00