Commit graph

113 commits

Author SHA1 Message Date
Kp dc8c0323d8 Uninline namespace dcx 2015-12-13 18:00:49 +00:00
Kp 85d7c495e8 Use inline namespace dsx for similar/2d 2015-12-13 18:00:48 +00:00
Kp aaaa7e6aa4 Make font datasize const after fixup 2015-12-04 03:36:32 +00:00
Kp 8a97c173a3 Remove useless gr_remap_mono_fonts
gr_remap_mono_fonts searches for fonts with !(font->ft_flags & FT_COLOR)
and calls gr_remap_font on any it finds.

gr_remap_font starts with:

	if (!(font->ft_flags & FT_COLOR))
		return;
2015-12-04 03:36:32 +00:00
Kp f509073b65 Move font allocdata pointer to grs_font 2015-11-14 18:17:21 +00:00
Kp 74290b5150 Add some error checking to font loader 2015-11-14 18:17:21 +00:00
Kp b36d95dccd Use generate_n to initialize font chars 2015-10-09 02:46:09 +00:00
Kp 50f672ba34 Reuse computed string length 2015-09-29 02:41:22 +00:00
Kp 0c0c93ca34 Refactor gr_string clipping checks 2015-09-29 02:41:22 +00:00
Kp d9cef82f81 Allow nullptr for gr_get_string_size 2015-09-29 02:41:22 +00:00
Kp 609e6ca584 Flip direction of bit scan
Fixes: b1c112d121 ("Fix -Og -Wuninitialized warning in gr_internal_string_clipped_template")
2015-09-24 03:05:16 +00:00
Kp 3c29742698 Flip direction of bit scan
Fixes: fc5611dc77 ("Fix -Og -Wuninitialized warning in gr_internal_string0_template")
2015-09-24 03:05:16 +00:00
Kp b1c112d121 Fix -Og -Wuninitialized warning in gr_internal_string_clipped_template 2015-09-13 21:02:19 +00:00
Kp fc5611dc77 Fix -Og -Wuninitialized warning in gr_internal_string0_template 2015-09-13 21:02:19 +00:00
Kp c4a8432081 Remove WORDS_NEED_ALIGNMENT memcpy src cast to const uint8_t*
The cast provokes a warning on systems that require alignment, so remove
it.  memcpy takes const void* input, so the cast is unnecessary.

Reported-by: MattWatt <https://github.com/dxx-rebirth/dxx-rebirth/issues/119>
2015-09-13 21:02:19 +00:00
Kp 17b1943c5e Mark various per-file structures as static 2015-08-12 03:11:46 +00:00
Kp c942d28197 Use accessor for grs_bitmap::bm_type 2015-07-25 23:10:47 +00:00
Kp 78f6dc29a6 Cache font scale Y float 2015-06-13 22:42:20 +00:00
Kp 869d0ffdc5 Optimize gr_get_string_size
Cache cv_font.
Defer updating longest_width.
Compute line height once at the end.
2015-06-13 22:42:20 +00:00
Kp e57afde68b Hoist store in gr_internal_string0_template 2015-05-09 17:39:02 +00:00
Kp 8ac92b098f Cache variables in gr_internal_string0_template 2015-05-09 17:39:02 +00:00
Kp bd5573356d Reduce gr_internal_string0_template variable scope 2015-05-09 17:39:02 +00:00
Kp 4228ed2324 Switch gr_internal_string0_template to count down loop 2015-05-09 17:39:02 +00:00
Kp 6d9de0d177 Use partial_range for font width 2015-05-09 17:39:02 +00:00
Kp d2cded3ad4 Combine gr_internal_string0{,m} 2015-05-09 17:39:01 +00:00
Kp b1ed5b86e2 Return get_char_width results by value 2015-05-09 17:39:01 +00:00
Kp 21aed0488f Hoist gr_setcolor in gr_internal_string_clipped_template 2015-05-09 17:39:00 +00:00
Kp 2fc4ca8d5a Cache variables in gr_internal_string_clipped_template 2015-05-09 17:39:00 +00:00
Kp bbadf1fe3e Reduce gr_internal_string_clipped_template variable scope 2015-05-09 17:38:59 +00:00
Kp 9d238af808 Switch gr_internal_string_clipped_template to count down loops 2015-05-09 17:38:59 +00:00
Kp 2d423ca383 Combine gr_internal_string_clipped{_m} 2015-05-09 17:38:59 +00:00
Kp aea5df067d Cache locals in get_char_width 2015-05-09 17:38:59 +00:00
Kp 4b0f257698 Pass find_kern_entry grs_font by & 2015-05-09 17:38:59 +00:00
Kp 1017802e48 Combine get_char_width and get_char_width_f as template 2015-05-09 17:38:59 +00:00
Kp c9ef463a16 Mark gr_message_color_level const 2015-05-09 17:38:59 +00:00
Kp f668705f20 Use array<> for Computed_colors 2015-04-26 20:15:57 +00:00
Kp 67e5e8c6c1 Remove unused gr_make_blend_table 2015-04-26 20:15:57 +00:00
Kp ace2235ad8 Remove unused gr_make_cthru_table 2015-04-26 20:15:57 +00:00
Kp 9274e56a41 Simplify gr_find_closest_color exit 2015-04-26 20:15:56 +00:00
Kp f900d4a5ee Remove RAIIdmem::operator pointer
Mac OS X defines uint_fast32_t to unsigned int, causing ambiguous
overloads between RAIIdmem::operator[](std::size_t) and
RAIIdmem::operator[](int).  Adding a disambiguating overload for OS X
breaks Windows.  Remove operator pointer and operator[].  Rely on the
inherited operator[] for indexing.  Require users to call ->get() to
convert to a simple pointer.

First btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/34
Second btb ambiguity reported: https://github.com/dxx-rebirth/dxx-rebirth/pull/43
2015-02-17 03:52:59 +00:00
Kp 99a4a0ed62 Capture range_for by-value temporaries as const
Modifying a by-value temporary does not affect the underlying container,
so modifying it is almost always a bug.  Require use of a by-reference
capture when modification is desired.

sed -i -e 's/range_for\s*(\s*\(const\s\+\)\?auto\s\+\([[:alpha:]_]\)/range_for (const auto \2/g'
2015-02-05 03:03:49 +00:00
Kp 93589368c9 Move PHYSFSX_putc to the one file that uses it 2015-01-29 04:27:36 +00:00
Kp ff4a0ccd70 Fix RAIIdmem array usage
Some RAIIdmem instances managed a T[], but were declared to manage a T.
2015-01-28 03:42:53 +00:00
Kp 49bf64c9b6 Use range_for in pcx_encode_line 2015-01-20 02:46:42 +00:00
Kp f7815810e8 Use RAIIPHYSFS_File to manage PHYSFS_File
Fixes a few leaks on error paths.
2015-01-17 18:31:42 +00:00
Kp 68d705a85a Use bool conversion to test PHYSFS_File pointer 2015-01-17 18:31:42 +00:00
Kp 6dc36deb74 Pass get_font_total_width arg by & 2014-12-02 03:35:01 +00:00
Kp c89e3b7452 Pass gr_bitmapm arg as & 2014-12-02 03:35:01 +00:00
Kp 95539512d5 Pass pcx_read_bitmap arg by & 2014-12-02 03:35:01 +00:00
Kp 5eddc2c197 Make bitmap bm_data const where easy 2014-12-02 03:24:38 +00:00