delorie.com/archives/browse.cgi   search  
Mail Archives: geda-user/2013/06/18/06:20:26

X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f
X-Recipient: geda-user AT delorie DOT com
Date: Tue, 18 Jun 2013 12:17:51 +0200 (CEST)
From: Roland Lutz <rlutz AT hedmen DOT org>
To: geda-user AT delorie DOT com
Subject: Re: [geda-user] gschem text measure
In-Reply-To: <51BE73B7.4020905@sonic.net>
Message-ID: <alpine.DEB.2.10.1306181147510.4029@home.local>
References: <51BE355E DOT 5040600 AT sonic DOT net> <51BE73B7 DOT 4020905 AT sonic DOT net>
User-Agent: Alpine 2.10 (DEB 1266 2009-07-14)
MIME-Version: 1.0
Reply-To: geda-user AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: geda-user AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

Hi,

In my opinion, the way text measurements are handled in gEDA is somewhat 
broken.  The bounding box of an object is usually retrieved via 
world_get_single_object_bounds.  This, however, depends on the TOPLEVEL 
context because libgeda by itself is unable to tell the bounding box of a 
text object, effectively asking the GUI to do so.  So there is data stored 
in the OBJECT struct which actually belongs to a TOPLEVEL object, making 
it impossible to share objects between contexts.

This is a problem in the FLAG_TEXT_OUTLINE rendering mode where the 
object's bounding box should be drawn but there is no TOPLEVEL context 
available in the renderer, so the objects' cached (and maybe invalid) 
bounding boxes are drawn instead.

One possible solution to address this would be to add a TOPLEVEL reference 
to the renderer.

Roland

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019