From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.devel Subject: Re: Emacs and Gnome Canvas Date: Thu, 15 Jul 2010 20:02:08 +0200 Message-ID: <87y6dcaajj.fsf@telefonica.net> References: <4C3CD120.4040905@swipnet.se> <5A91499A-0470-43FD-9F48-560CEAD3424C@mit.edu> <83wrsyr068.fsf@gnu.org> <83iq4hhjww.fsf@gnu.org> <87sk3lbvv0.fsf@telefonica.net> <83hbk1grnq.fsf@gnu.org> <4C3EBCDC.8050709@swipnet.se> <83d3upgmwj.fsf@gnu.org> <4C3ECB4C.6050208@swipnet.se> <83aaptgly1.fsf@gnu.org> <4C3ED4F9.4080603@swipnet.se> <83630hgi0r.fsf@gnu.org> <4C3EE8D6.3020607@swipnet.se> <8339vlgcax.fsf@gnu.org> <87fwzkbzg8.fsf@telefonica.net> <877hkwag6y.fsf@stupidchicken.com> <877hkwbth6.fsf@telefonica.net> <87y6dcacdy.fsf@stupidchicken.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: dough.gmane.org 1279216958 14843 80.91.229.12 (15 Jul 2010 18:02:38 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 15 Jul 2010 18:02:38 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 15 20:02:37 2010 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.69) (envelope-from ) id 1OZSlZ-00007T-30 for ged-emacs-devel@m.gmane.org; Thu, 15 Jul 2010 20:02:37 +0200 Original-Received: from localhost ([127.0.0.1]:52156 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZSlY-0000XF-BN for ged-emacs-devel@m.gmane.org; Thu, 15 Jul 2010 14:02:36 -0400 Original-Received: from [140.186.70.92] (port=39706 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OZSlR-0000Um-W1 for emacs-devel@gnu.org; Thu, 15 Jul 2010 14:02:30 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OZSlQ-0003mN-9T for emacs-devel@gnu.org; Thu, 15 Jul 2010 14:02:29 -0400 Original-Received: from lo.gmane.org ([80.91.229.12]:55677) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OZSlQ-0003mC-02 for emacs-devel@gnu.org; Thu, 15 Jul 2010 14:02:28 -0400 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1OZSlN-0008UH-KB for emacs-devel@gnu.org; Thu, 15 Jul 2010 20:02:25 +0200 Original-Received: from 83.42.13.171 ([83.42.13.171]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 15 Jul 2010 20:02:25 +0200 Original-Received: from ofv by 83.42.13.171 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 15 Jul 2010 20:02:25 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 36 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 83.42.13.171 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) Cancel-Lock: sha1:zriDCeHWZUDHi0xKKQvUuSy7TGg= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) 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:127384 Archived-At: Chong Yidong writes: > Óscar Fuentes writes: > >> Would that system allow to draw UML diagrams with real graphics, instead >> of ASCII? Would it allow to implement a real graphical view for the DAG >> of a dVCS history? In short, would it a real drawing surface where you >> can draw arbitrary stuff and react to user actions such as the user >> clicking and dragging a line, preferably from Elisp code? > > If this is the reason you want to work with Canvas, I don't think it's > necessary to overhaul the Emacs redisplay engine at all. A better > approach would be to create a system that allows Canvas objects to be > embedded in an Emacs display, in the same way that images can be > embedded. > > Thinking of this problem as "replacing" redisplay, or creating an > alternative to redisplay, is unnecessary. > > Joakim's patch for embedding gtk widgets is an interesting existing > experiment, somewhat along these lines. I don't think this is poweful enough. There should be no separation among text areas and drawing areas. Text should be just another kind of item on the canvas. How do you represent an UML diagram with editable areas inside the boxes, or editable rotated text along the lines that connects them? Or even simpler: how about implementing something like a tree widget on pure Elisp? It seems to me that doing that with the approach you propose will be very difficult, at best. My impression (and this is something that remains to be checked) is that implementing a new general display engine will be faster than enhancing the current one for adding a subset of the features the new one would bring on, not mentioning long term benefits like hackability and easy of maintenance.