Re: selection drawing

From: Dom Lachowicz (domlachowicz@yahoo.com)
Date: Sat Jun 28 2003 - 09:17:21 EDT

  • Next message: Hubert Figuiere: "Re: selection drawing"

    > We currently draw the selection rectangles using
    > fillRect() function,
    > and this is not optimal. It would be better if we
    > had a xorRect()
    > function and use it instead. The main benefit would
    > be that the text
    > of the whole run could be drawn in a single go in a
    > single colour.
    > While the performance gain is probably negligeable,
    > it would mean no
    > need to decompose ligatures on selection boundaries.
    > (The screen
    > redraw always starts with filling the base rectangle
    > with background
    > colour, so this would not mean the dirt problems we
    > experienced with
    > the carret.)
    >
    > The other thing is the selection colour. At present
    > it is preference-
    > given, which is only marginally better than having
    > it hard coded. It
    > would seem to me that a very simple way of having
    > the selection
    > colour sufficiently contrast with the background is
    > to use the
    > current font colour to draw the rectangles and to
    > used the current
    > bacground colour to draw the text in them. This
    > requires virtually no
    > changes to our code, with the additional benefit of
    > being able to get
    > rid of the selection colour preferences.

    Hi Tomas,

    1) XOR is nasty (impossible?) on Mac OSX
    2) We want to honor the system theme preferences for
    selection background color and font color. Our
    solution on win32 and gtk+ is not just the "marginally
    better than hardcoded" preference, it's actually fully
    integrated with the desktop environment.

    For these reasons (especially #2), I'm not willing to
    break away from our current behavior.

    Best regards,
    Dom

    __________________________________
    Do you Yahoo!?
    SBC Yahoo! DSL - Now only $29.95 per month!
    http://sbc.yahoo.com



    This archive was generated by hypermail 2.1.4 : Sat Jun 28 2003 - 09:29:21 EDT