Subject: FVWM: Window hierarchy ?

From: "[email-masked]" <[email-masked]>
Date: Thu, 27 Jun 2002 10:11:19 -0400

Hello,

I'm new with FVWM and I have a question.

I'm writing a X-Window application (based on Trolltech Qt libraries, running under Linux with FVWM2). 

This application has a lot of windows. And some of those windows have more priority.

Is it possible to create an hierarchy with the different windows ? 
For example, if I have five windows:
A has priority 3 (less priority)
B and C have priority 2 (middle priority)
D and E have priority 1 (first priority)
Does somebody know how to always have windows D and E above all other,
If I select the E window it comes above D window, and if a select D window it comes above E window,
If I select B window it comes above C window but always under D and E windows (in case of overlapping), etc…

Can it be done at the WindowManager level or at the X-Window level (properties of the windows)?

Thanks in advance

Fred

[email-masked]

--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .

--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
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: Mikhael Goikhman <[email-masked]>
Date: Thu, 27 Jun 2002 14:59:14 +0000

On 27 Jun 2002 10:11:19 -0400, [email-masked] wrote:
> If I select the E window it comes above D window, and if a select D
> window it comes above E window, If I select B window it comes above C
> window but always under D and E windows (in case of overlapping), etc.
> 

You may want to use layers. An application may assign them using gnome
window manager hints or using extended window manager hints (EWMH).
FVWM recognizes these hints unless they are switched off by a user.

You may do it on the window manager configuration level too by defining:

  Style A_pattern Layer 2
  Style B_pattern Layer 4
  Style C_pattern Layer 4
  Style D_pattern Layer 6
  Style E_pattern Layer 6

The default window layer (StaysPut) is 4, other shortcuts: StaysOnTop
is layer 6, StaysOnBottom is layer 2

But if you write your application please rethink twice before throwing
layers on pure users. I never like that an application dictates that one
of its windows is always above others or even grabs X until it is closed.
Fortunately FVWM has all the needed defence against applications that
abuse their priveleges. :)

I think (without knowing details) that a better solution than layers is
to define window groups and/or a tree of your transients. Then a user
has more options to configure such window tree, search for "Transient"
or "WindowGroups" in the fvwm man page.

Regards,
Mikhael.

---

From: Dominik Vogt <[email-masked]>
Date: Sat, 29 Jun 2002 21:49:09 +0200

On Thu, Jun 27, 2002 at 02:59:14PM +0000, Mikhael Goikhman wrote:
> layers on pure users.

Let me put it this way:

  layers = best way to drive the user up the wall = evil

(same is valid for window that raise or maximize themselves - or
worse: both)

> or "WindowGroups" in the fvwm man page.

Transients should give reasonable results.  Lets assume B and C
are opened from A, D is openend from B and E is openend from C.

The set the transientfor property of the window to

window  transientfor
  A        -
  B        A
  C        A
  D        B
  E        C

Bye

Dominik ^_^  ^_^

 --
Dominik Vogt, [email-masked]
Reply-To: [email-masked]
--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
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].