[plt-scheme] GUI guides?

From: Hugh Myers (hsmyers at gmail.com)
Date: Sun Jul 5 22:41:53 EDT 2009

Thanks for the pointer to dc% What you mention seems like a logical
(heaven forbid) arrangement given the concepts involved. Having
survived the age of roll-your-own gui (usually text), original
windows, and then MFC this should be just another notch in my
gui-belt. Even as we e-speak I'm in the middle of investigating frame%
which has some of the answers in my shopping-list. I think one of the
things that will be in my version of 'GUI Editor Guide' will be a list
of what all can be set/modified for a given window. Sometimes it is
easier to pick and choose from such a list than to comb a detailed
reference--- I think as a guide, this approach might be the one to go


On Sun, Jul 5, 2009 at 6:51 PM, Ryan Culpepper<ryanc at ccs.neu.edu> wrote:
> Hugh Myers wrote:
>> Am solving some of these as I try and think of questions to ask. Some
>> of the answers raise questions about what is or isn't do-able. For
>> instance given fixed width symbol font (like all chess fonts) it would
>> be nice to ask how wide and how tall a given text string is. This
>> could be used to 'size' the window before display. Nothing I've seen
>> yet even hints that this is possible, yet it seems quit reasonable.
> I think you want 'get-text-extent' in 'dc<%>' (drawing context).
> Here are some rough guidelines:
>  - 'editor<%>' and 'text%' deal with the text, its styles, modifications to
> the text, high-level display concerns (word wrapping, visible/ region, etc).
>  - 'canvas<%>' and 'editor-canvas%' deal with the gui concerns: dimensions
> of the editor widget, its auxiliary gui elements (scrollbars), etc.
>  - 'dc<%>' deals with rendering issues, like how big a string in a
> particular font will be rendered on screen.
> Browsing those classes and interfaces is a good way to get an idea of what
> functionality is available and how it's provided. Remember to look at the
> superclasses and superinterfaces, too.
> Ryan

Posted on the users mailing list.