Commit graph

3001 commits

Author SHA1 Message Date
Dane Springmeyer
e1c1371935 Merge pull request #2514 from mapycz/perf-tolerance-iterator
exponential tolerance_iterator
2014-10-14 20:49:19 -07:00
Dane Springmeyer
8b441cbd2d fix mapnik/node-mapnik#332 2014-10-14 20:30:55 -07:00
Dane Springmeyer
7a58a9413d remove uneeded include 2014-10-14 20:23:21 -07:00
Jiri Drbalek
f95f200ac1 make tolerance_iterator exponential 2014-10-14 10:47:45 +00:00
Dane Springmeyer
09f91a24a0 Merge pull request #2523 from mapycz/halign-adjust-immutable
halign adjust with immutability of style objects in mind
2014-10-13 18:47:37 -07:00
Dane Springmeyer
ad91c56718 Avoid BOOST_MPL_LIMIT_VECTOR_SIZE redefined warning 2014-10-13 18:06:53 -07:00
Dane Springmeyer
9a78c6dfe1 improve register_datasources + drop filesystem v2 support since v3 is default in boost >= 1.46 2014-10-13 17:43:14 -07:00
Dane Springmeyer
66ce021ad5 cairo_gradient: fallback to radial if the class is misused to prevent crash on uninitalized pattern 2014-10-13 17:26:32 -07:00
Dane Springmeyer
1f1c8a322b initialize all member variables 2014-10-13 17:23:45 -07:00
Dane Springmeyer
4b689ef05d fix casting to doubles 2014-10-13 17:23:30 -07:00
artemp
f8031dec96 no need to initialise `evaluated_xxx' structures as initialisation happens at evaluation step 2014-10-13 14:11:23 +01:00
artemp
7969a1c13a use more appropriate header 2014-10-13 13:23:14 +01:00
Jiri Drbalek
1252369292 add horizontal-alignment="adjust" with immutability of style objects in
mind
2014-10-13 12:16:48 +00:00
artemp
4fe0c249a6 make hb_feature_t EqualityComparable and fix font_feature_settings operator== 2014-10-13 11:22:28 +01:00
Dane Springmeyer
6b1c4d00e5 MAPNIK_DECL font_feature_settings 2014-10-12 22:00:25 -07:00
Dane Springmeyer
885a98f9c1 improve handling of format properties - refs #2516
- changes evaluated_format_properties_ptr to unique_ptr
 - refactors group symbolizer helper to keep scope by
   having each "thunk" own its helper
 - glyph_info can now be noncopyable
 - format node children now need an owner for their
   evaluated_format_ptr so the enclosing parent layout
   now allocates and holds pointers in a deque
 - plus other noncopyable/move constructor fixes
2014-10-12 21:41:59 -07:00
Dane Springmeyer
35b4518b13 iwyu 2014-10-12 16:35:35 -07:00
Dane Springmeyer
a9f58c70b4 shuffle complexity into layout constructor
- should reduce mistakes in refactoring
  - gives top level ownership of evaluated_format_properties_ptr to a layout node (#2516)
  - not sure ^^ if this actually keeps it in scope enough for rendering?
  - moves data transformation functions off of text_symbolizer_properties
2014-10-12 16:07:26 -07:00
Dane Springmeyer
cf2df4f0cc harfbuzz shaper: return early if itemizer returns empty list 2014-10-12 15:48:15 -07:00
Dane Springmeyer
f3eba54078 noncopyable glyph_info - refs #2516 2014-10-12 14:24:57 -07:00
Dane Springmeyer
2000c1713d in place construction of glyph_positions 2014-10-12 13:54:07 -07:00
Dane Springmeyer
4e7feaf747 move glyph_positions to new cpp 2014-10-12 13:46:35 -07:00
Dane Springmeyer
94aa67b0af vertex_cache: in place construction of segments 2014-10-12 13:30:24 -07:00
Dane Springmeyer
e4c895d4c1 zero copy usage of text_line 2014-10-12 13:23:03 -07:00
Dane Springmeyer
a648538bcd add more code comments to placement_finder to help explain layouts 2014-10-12 12:18:59 -07:00
Dane Springmeyer
f1c3d0c3ce iwyu in group_symbolizer_helper.hpp 2014-10-12 12:00:00 -07:00
Dane Springmeyer
a8c8ea9ac4 reserve space for glyph_pos in renderer prepare_glyphs 2014-10-11 22:59:56 -07:00
Dane Springmeyer
3d142c2712 move evaluate_text_properties to standalone function - refs #2516 2014-10-11 22:48:00 -07:00
Dane Springmeyer
e6a66aaaba finish work to pass font_feature_settings by value - refs #2516 2014-10-11 22:39:40 -07:00
Dane Springmeyer
a61364d263 revert halign support - refs #2426 2014-10-11 20:03:56 -07:00
Dane Springmeyer
f7849cea09 make evaluated_text_properties noncopyable 2014-10-11 19:28:04 -07:00
Dane Springmeyer
477d6cc7ee zero-copy text_item insertion 2014-10-11 19:12:15 -07:00
Dane Springmeyer
b455cc9098 give glyph_info better ctor 2014-10-11 17:52:54 -07:00
Dane Springmeyer
eabdf46118 drop unwise glyph_info caching - reverts 99a46f6910 - re-opens #2334 2014-10-11 17:32:41 -07:00
Dane Springmeyer
ba285aa9fa remove unused (after 8bc7a56cda) font_face::char_height_ 2014-10-11 15:55:15 -07:00
Dane Springmeyer
b275144004 make cairo_context.add_text more like agg::text_renderer 2014-10-11 13:08:28 -07:00
Dane Springmeyer
e1eb9fa5b1 reduce pointer usage in text renderer - refs #2516 2014-10-10 18:01:24 -07:00
Dane Springmeyer
8bc7a56cda use real max glyph height
- avoids breakage on fonts lacking an `X` glyph (#2506)
      - avoids needing to create and mutate a temporary glyph (#2516)
      - lots of minor visual changes - mostly improvements notably more correct collision boxes for lines with tall glyphs
2014-10-10 15:18:11 -07:00
artemp
74e872c48b avoid storing evaluated text properties in text_symbolizer_properties (all style related strucures must be read-only)
make process(..) method const
2014-10-10 12:38:06 +01:00
Dane Springmeyer
c6ed108a72 start marking as much of the text structures as const as possible - refs #2516 2014-10-09 23:00:39 -07:00
Dane Springmeyer
2d88f736fe remove uneeded access to format tree 2014-10-09 20:51:43 -07:00
Dane Springmeyer
c26c60e48e remove set_old_style_expression 2014-10-09 20:51:43 -07:00
Dane Springmeyer
344108c621 const not viable yet on itemizer 2014-10-09 20:00:35 -07:00
Dane Springmeyer
364af033a2 stash work on trying to convert font_feature_settings to be passed by value 2014-10-09 19:23:11 -07:00
Dane Springmeyer
2e4a9cfaf2 itemizer should be const in icu_shaper 2014-10-09 18:44:28 -07:00
Dane Springmeyer
536b23bfde fix uneeded pointer indirection with glyph_info/glyph_position 2014-10-09 18:38:29 -07:00
Dane Springmeyer
1fead3396b cleanup unused clipped_ member of base_symbolizer_helper after 9835057b0f 2014-10-09 11:40:30 -07:00
Dane Springmeyer
3479fcaec5 finish templating the json geometry generator on geometry container 2014-10-09 00:48:58 -07:00
Dane Springmeyer
7bc956e9e8 fix mis-spelling of fwd declare for text_placement_info_dummy 2014-10-08 16:51:33 -07:00
Dane Springmeyer
c4857c640b clean up string handling in font_set::add_face_name 2014-10-08 16:46:48 -07:00