Loading ...
Sorry, an error occurred while loading the content.

727Re: RevOut

Expand Messages
  • Bram Moolenaar
    Oct 6, 2002
    • 0 Attachment
      Glenn Maynard wrote on Aug 18:

      > In win32 gui_mch_draw_string:
      >
      > [...]
      >
      > RevOut claims that its code is needed for NT 5+ and 98+:
      >
      > [...]
      > So, it's only being called in NT, but thinks the code is needed in NT5+
      > and 98+. So there are four cases: <= 95, >= 98, <= NT4, >= NT5, and
      > it's not clear which of them need the per-character code and which can
      > use ETO_IGNORELANGUAGE. The selection should probably be done all in
      > one place, rather than in two places (both RevOut and the call to
      > RevOut). I don't think the "special" optimization does anything; I'd just
      > put it all in the call, so we'd have:

      I didn't see a response or folloup about this. Do we need to change
      anything, or should we just wait until someone complains there is a
      problem?

      > Other problems:
      > 1: This needs to be done all the time, not just when curwin->w_p_rl is
      > set, or we get screen corruption if the file happens to have Hebrew/Arabic
      > text in it. We should always render all Unicode text documents without
      > screen corruption, even if it's not "right" for the language itself.

      Would there ever be Hebrew/Arabic text without 'rightleft' set?

      > 2: This needs to be done in Unicode, too. If I paste Arabic text when
      > enc=UTF-8, I get graphical glitches. (Well, I do if I comment out
      > ETO_IGNORELANGUAGE, which indicates that this would happen in 9x.)

      This should be simple to solve.

      > Perhaps we should just *always* draw character-by-character? Is it
      > ever noticably slower? (I can't tell; I'm on a K7/1000.) There
      > doesn't seem to be an easy way to find out if there are characters
      > in the text that Windows is going to mess with.

      I do think it would cause a slowdown. Calling a windows system function
      does have overhead.

      --
      hundred-and-one symptoms of being an internet addict:
      134. You consider bandwidth to be more important than carats.

      /// Bram Moolenaar -- Bram@... -- http://www.moolenaar.net \\\
      /// Creator of Vim - Vi IMproved -- http://www.vim.org \\\
      \\\ Project leader for A-A-P -- http://www.a-a-p.org ///
      \\\ Lord Of The Rings helps Uganda - http://iccf-holland.org/lotr.html ///
    • Show all 3 messages in this topic