Subject: FVWM: ANNOUNCE: CleverPlacement

From: Anthony Martin <[email-masked]>
Date: Fri, 25 Oct 1996 01:10:22 -0700 (PDT)

I have implemented CleverPlacement (thanks to Trent Piepho for the name).
CleverPlacement is like SmartPlacement, but instead of falling back to
RandomPlacement or ActivePlacement when it can't find a place to
put the window, CleverPlacement finds the area where there is the least
amount of interference with other windows and places it there.  It
generally puts the window more or less where you would have put it
yourself.

To try it, just replace the standard placement.c with this one:
http://www.engr.csulb.edu/~amartin/placement.c
and recompile.

Note that currently, this just replaces SmartPlacement, so you will need
to have the SmartPlacement style in your .fvwmrc file.

I tested this on fvwm-2.0.43, but it should work fine with fvwm95, as I
think the placement code hasn't changed.

I would like to hear about successes or failures.

Tony.

--
Visit the official FVWM web page at <URL:http://www.hpc.uh.edu/fvwm/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].

---

From: "Charles Hines" <[email-masked]>
Date: Fri, 25 Oct 1996 09:36:42 -0400

>>>>> "AM" == Anthony Martin <[email-masked]> writes:

AM> I have implemented CleverPlacement (thanks to Trent Piepho for the name).
AM> CleverPlacement is like SmartPlacement, but instead of falling back to
AM> RandomPlacement or ActivePlacement when it can't find a place to
AM> put the window, CleverPlacement finds the area where there is the least
AM> amount of interference with other windows and places it there.  It
AM> generally puts the window more or less where you would have put it
AM> yourself.
....

I'm going to give it a try, and if it looks good I'll merge it (or a
minor variant) into the next beta as the new SmartPlacement behavior.

Chuck

---

From: Anthony Martin <[email-masked]>
Date: Fri, 25 Oct 1996 10:24:04 -0700 (PDT)

> minor variant) into the next beta as the new SmartPlacement behavior.

As you will see from the code, the new CleverPlacement can be made to
behave the same as the old SmartPlacement with a flag, so it is possible
to have both behaviors without much difference in code size.  It is up to
you whether you think is is desirable to keep the old behavior.  If not,
then just remove the related code from CleverPlacement().

Tony.