From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Cursor drawing Date: Thu, 20 Dec 2018 14:18:22 -0500 Message-ID: References: <838t0kcmpj.fsf@gnu.org> <831s6cc8zy.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1545333775 15480 195.159.176.226 (20 Dec 2018 19:22:55 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 20 Dec 2018 19:22:55 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Dec 20 20:22:50 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ga3uE-0003tq-NK for ged-emacs-devel@m.gmane.org; Thu, 20 Dec 2018 20:22:50 +0100 Original-Received: from localhost ([::1]:39557 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ga3wL-0007Ob-7T for ged-emacs-devel@m.gmane.org; Thu, 20 Dec 2018 14:25:01 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45440) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ga3q0-0003Dl-0n for emacs-devel@gnu.org; Thu, 20 Dec 2018 14:18:28 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ga3pw-000211-OR for emacs-devel@gnu.org; Thu, 20 Dec 2018 14:18:27 -0500 Original-Received: from alt13.smtp-out.videotron.ca ([135.19.0.26]:13412 helo=alt12.smtp-out.videotron.ca) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ga3pw-0001zl-H4 for emacs-devel@gnu.org; Thu, 20 Dec 2018 14:18:24 -0500 Original-Received: from fmsmemgm.homelinux.net ([23.233.195.134]) by Videotron with SMTP id a3pugG1IOJKfya3pvgsgx3; Thu, 20 Dec 2018 14:18:23 -0500 X-Authority-Analysis: v=2.3 cv=N6sH6V1B c=1 sm=1 tr=0 a=xXJ578j8WyTliCxld3/pTA==:117 a=xXJ578j8WyTliCxld3/pTA==:17 a=2ur7OfE09M0A:10 a=E_Bb-BH75nswy6K0LsgA:9 Original-Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 34DCAAE59B; Thu, 20 Dec 2018 14:18:22 -0500 (EST) In-Reply-To: <831s6cc8zy.fsf@gnu.org> (Eli Zaretskii's message of "Thu, 20 Dec 2018 21:07:29 +0200") X-CMAE-Envelope: MS4wfPndZlZ8v/hJn46i9xulbm/3BE5Mpr8Ip0zVlhK3dWozg9Mn0STcu/tIp666E+KTFBGm6D0bSdnMsRuxhHiHwexaOO87Xd8EkoalW4n2jsrLVa/cC21T DkDhldgsJjKXwEOSHmYMEPSIiVVvIGJF61RBv3+GMB93vsL9+WVHXjCjJKGyBWxZwqmPJRiWyl2TnpuzxcOolFrCfaU8M0K5PH2Ab4fLNpG1Sw8v8QUkq/Hp Egt4tWVzuaEieJdoKOerww== X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 135.19.0.26 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:231935 Archived-At: > into pixels" part: I suspect that you have some mental model of that > which is not entirely consistent with what the code actually does. I'd be surprised if my mental model is actually consistent with what happens, yes ;-) > So maybe you should say more about how you imagine this works, and how > under that mental model you envision this part: >> - redraw of a clipping region is done by "rendering" the corresponding >> part of a glyph matrix combined with the corresponding part of the >> overlay layer into pixels. I imagine this as being done possibly as; 1- draw the relevant glyphs from the glyph matrix 2- draw the relevant part of the overlay on top of it (with some form of transparency so as not to completely overwrite what was drawn in step 1). > The crucial part here, for me, is how this "combination" would be > different from "shoehorning crosshairs into the glyph matrix". Can > you elaborate on what you had in mind? The crosshairs don't need to be represented/mentioned in the glyph matrix. You can just keep in the overlay layer an entry that says "draw vertical line at pixel column X" and "draw horizontal line at pixel line Y". >> The advantage would be mostly that the overlay data structure could be >> designed completely differently from glyph-matrices > Like what, for example? Maybe more like an SVG canvas? Stefan