From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Jason Rumney Newsgroups: gmane.emacs.devel Subject: Re: Analysis of redisplay performance on Windows Date: Mon, 28 Jul 2008 08:04:46 +0100 Message-ID: <488D6F8E.8080502@gnu.org> References: <87od4kuis1.fsf@stupidchicken.com> <488C45FF.2040509@gnu.org> <87tzebnizu.fsf@stupidchicken.com> <488CE8F6.5080001@gnu.org> <87iqurhupv.fsf@stupidchicken.com> <488CEE6B.6020600@gnu.org> <8763qqiz6j.fsf@stupidchicken.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1217228728 30304 80.91.229.12 (28 Jul 2008 07:05:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 28 Jul 2008 07:05:28 +0000 (UTC) Cc: emacs-devel@gnu.org To: Chong Yidong Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Jul 28 09:06:18 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KNMo4-0001Ll-JT for ged-emacs-devel@m.gmane.org; Mon, 28 Jul 2008 09:06:08 +0200 Original-Received: from localhost ([127.0.0.1]:41024 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KNMnA-0003UK-9t for ged-emacs-devel@m.gmane.org; Mon, 28 Jul 2008 03:05:12 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KNMn5-0003UF-Ly for emacs-devel@gnu.org; Mon, 28 Jul 2008 03:05:07 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KNMn3-0003Tq-5u for emacs-devel@gnu.org; Mon, 28 Jul 2008 03:05:06 -0400 Original-Received: from [199.232.76.173] (port=60606 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KNMn3-0003Tn-3Q for emacs-devel@gnu.org; Mon, 28 Jul 2008 03:05:05 -0400 Original-Received: from mx20.gnu.org ([199.232.41.8]:11584) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KNMn2-0005Ve-FN for emacs-devel@gnu.org; Mon, 28 Jul 2008 03:05:04 -0400 Original-Received: from mk-outboundfilter-4.mail.uk.tiscali.com ([212.74.114.32]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KNMn1-0006e9-Q5 for emacs-devel@gnu.org; Mon, 28 Jul 2008 03:05:04 -0400 Original-X-Trace: 116137245/mk-outboundfilter-2.mail.uk.tiscali.com/F2S/$F2S-ACCEPTED/f2s-freedom2Surf-customers/83.67.23.108 X-SBRS: None X-RemoteIP: 83.67.23.108 X-IP-MAIL-FROM: jasonr@gnu.org X-IP-BHB: Once X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuMEAEIMjUhTQxds/2dsb2JhbACBW4k8ois X-IronPort-AV: E=Sophos;i="4.31,263,1215385200"; d="scan'208";a="116137245" X-IP-Direction: IN Original-Received: from i-83-67-23-108.freedom2surf.net (HELO wanchan.jasonrumney.net) ([83.67.23.108]) by smtp.f2s.tiscali.co.uk with ESMTP; 28 Jul 2008 08:05:02 +0100 Original-Received: from [192.168.249.27] (chiko.jasonrumney.net [192.168.249.27]) by wanchan.jasonrumney.net (Postfix) with ESMTP id 111F61B7; Mon, 28 Jul 2008 08:05:27 +0100 (BST) User-Agent: Thunderbird 2.0.0.16 (Windows/20080708) In-Reply-To: <8763qqiz6j.fsf@stupidchicken.com> X-Enigmail-Version: 0.95.6 OpenPGP: id=8086879D X-detected-kernel: by mx20.gnu.org: Genre and OS details not recognized. X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:101625 Archived-At: Chong Yidong wrote: > Jason Rumney writes: > >> As I suggested in my earlier email, new functions in the >> font backend interface to select a font for working with and releasing >> it when done, would help, as we could then skip doing this in >> functions like encode_char and text_extents. > > Could you suggest precisely what interface we need? I.e., could you > suggest function names and rough docstrings? /* Optional. Begin using a font exclusively. Backends may setup the FONT for use on frame F here so that it does not need setting up in every call to the encode_char, text_metrics or draw functions. The font remains current until done_font is called. */ functions. void (*use_font) P_ ((FRAME_PTR f, struct font *font)); /* Optional. Finish using a font exclusively. Backends may undo the actions of use_font here. */ void (*done_font) P_ ((FRAME_PTR f, struct font *font));