Subject: FVWM: FvwmIconMan ?

From: Michael M Han <[email-masked]>
Date: Mon, 13 Oct 1997 11:22:12 -0700

I've been using IconMan pretty happily for a while now, but a friend
and I are now stymied by the same thing. We're both looking to run
separate IconMen to cover desk/page windows v. the rest. This is
supposed to be possible according to the man page and I've configured
IconMan correctly, I think. However, when I invoke IconMan I get my
first manager showing what it's supposed to show and the second
instance showing nothing except an FvwmIconMan button. I'm still
trying to figure out if IconMan is showing the other IconMan window or
whether that's a title button...

Anyway, is anyone doing this successfully? Does FvwmIconMan need to be
invoked in some special way when multiple IconMen are configured (e.g.
"Module FvwmIconMan 1"). This didn't seem to work... I can provide the
salient bits from my rcfile, but not until later (home machine). It
seems the relevant information is like so:

FvwmIconMan*nummanagers 2
FvwmIconMan*1*resolution page
FvwmIconMan*2*resolution global

It gets invoked with "Module FvwmIconMan" currently.

Finally, it seems that FvwmIconMan opens all windows it's configured
for when it's invoked. This is correct? It would be nice to have each
one able to be invoked separately, since ultimately I'm trying to
Swallow the IconMen into FvwmButtons... Works great for one IconMan,
but two's been quite the headache.

One last thing, I'm running RedHat Linux 4.0 with many many RPMs
upgraded, 2.0.30 kernel compiled by me, AcceleratedX 2.1 and
fvwm-2.0.46 also compiled by yours truly. Any insight would be greatly
appreciated.
_____
Michael Han ([email-masked])                     voice: (415) 502-7542
Interactive Learning Center Consultant                        (415) 476-4309
San Francisco, California 94143-0840                     fax: (415) 476-4653
"'Why is that toy on your head?' 'Because if I wear it anywhere else, it
chafes.'" - Chris Knight

--
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: Jim Searle <[email-masked]>
Date: Mon, 13 Oct 1997 11:52:46 -0700 (PDT)

Michael,

Below is my IconMan config lines, for doing just the kind of thing you
want.

###########################################################################
# FvwmIconMan
###########################################################################
*FvwmIconMan*numManagers 3
*FvwmIconMan*background  LightGrey
*FvwmIconMan*foreground  black
*FvwmIconMan*font        -adobe-helvetica-bold-r-*-*-12-*-*-*-*-*-*-*
*FvwmIconMan*followfocus true
*FvwmIconMan*sort        false
*FvwmIconMan*drawicons   true
*FvwmIconMan*plainbutton          up   black rgb:60/A0/C0
*FvwmIconMan*selectbutton         down black rgb:60/A0/C0
*FvwmIconMan*focusbutton          up   black rgb:C0/60/77
*FvwmIconMan*focusandselectButton down black rgb:C0/60/77
*FvwmIconMan*action  Mouse 1 A sendcommand "Iconify -1", \
                               sendcommand "Focus", sendcommand "Raise"
*FvwmIconMan*action  Mouse 2 A sendcommand "Iconify"
*FvwmIconMan*action  Mouse 3 A sendcommand "Iconify -1", \
                               sendcommand "Focus", sendcommand "Lower"
*FvwmIconMan*action  Mouse 1 S sendcommand "Iconify -1", \
                               sendcommand "Focus", sendcommand "Raise", \
                               sendcommand "WindowShade 2"
*FvwmIconMan*action  Mouse 3 S sendcommand "Iconify -1", \
                               sendcommand "Focus", sendcommand "Raise", \
                               sendcommand "WindowShade 1"
*FvwmIconMan*format               "%i"
*FvwmIconMan*resolution           desk
*FvwmIconMan*1*buttongeometry     504x0
*FvwmIconMan*1*managergeometry    1x1
*FvwmIconMan*1*title              "Emacs Icons"
*FvwmIconMan*1*show               class=*Emacs

*FvwmIconMan*2*buttongeometry     1280x0
*FvwmIconMan*2*managergeometry    1x1
*FvwmIconMan*2*title              "Term Icons"
*FvwmIconMan*2*show               class=*Term class=*term

*FvwmIconMan*3*buttongeometry     504x0
*FvwmIconMan*3*managergeometry    1x2
*FvwmIconMan*3*title              "Misc Icons"
*FvwmIconMan*3*dontshow           class=*Emacs class=*Term class=*term

And these are the appropriate lines for swallowing them from my FvwmButtons.

*FvwmButtons(22x1, Swallow(Close,UseOld) "Emacs Icons" "module FvwmIconMan")
*FvwmButtons(22x2, Swallow(NoClose,UseOld) "Misc Icons" Nop)
*FvwmButtons(54x1, Size 1180 10, Frame 0, Swallow(NoClose,UseOld) "Term Icons" Nop)

jim

-- 
| Jim Searle, Design Engineer,   E-mail: [email-masked]     |
| Broadcom Corporation           Phone:  714-450-8700    __ O  |
| 16251 Laguna Canyon Road    Irvine, CA   92718       _ \ <_  |
| ____________________________________________________( )/ ( )_|
--
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: [email-masked] (David S. Goldberg)
Date: 13 Oct 1997 15:47:21 -0400

> [...] when I invoke IconMan I get my first manager showing what it's
> supposed to show and the second instance showing nothing except an
> FvwmIconMan button. I'm still trying to figure out if IconMan is
> showing the other IconMan window or whether that's a title button...

You could verify that by setting a different title for each manager
window (see below) and see which ends up in there.

> It gets invoked with "Module FvwmIconMan" currently.

That looks like the right way to do it.  From the FvwmIconMan man
page:

       If a window could be handled by more than one manager, then
       the manager with the lowest id gets it.

That quote is towards the end of the section on show and dontshow
options so it may not be relevant outside of those options.  However,
I think that this should mean the first manager gets the icons for the
current page and the second manager everything else modulo show and
dontshow specs because the current page manager has a lower id#.  If
that's not what's happening I would consider it a bug.

> for when it's invoked. This is correct? It would be nice to have
> each one able to be invoked separately, since ultimately I'm trying
> to Swallow the IconMen into FvwmButtons... Works great for one
> IconMan, but two's been quite the headache.

No need to invoke them separately.  You just have to be a bit clever
with FvwmButtons.  I came up with the following:

*FvwmButtons(104x2, Frame 0, Swallow(NoClose,UseOld) "Emacs Icons" \
    "Module FvwmIconMan")
*FvwmButtons(104x2, Frame 0, Swallow(NoClose,UseOld) "XTerm Icons" Nop)
*FvwmButtons(104x2, Frame 0, Swallow(NoClose,UseOld) "Misc Icons" Nop)

*FvwmIconMan*1*title "Emacs Icons"
*FvwmIconMan*2*title "XTerm Icons"
*FvwmIconMan*3*title "Misc Icons"

They key is to use UseOld and Nop.  The first FvwmButtons line starts
FvwmIconMan which maps all the managers.  That first line waits for
the first manager to map and swallows it.  When the second line gets
processed, the UseOld catches the existence of the second manager but
doesn't do anything other than swallow (since function is Nop).  Same
for the third and any others that you may have.

--
Dave Goldberg
Post: The Mitre Corporation\MS B305\202 Burlington Rd.\Bedford, MA 01730
Phone: 781-271-3887
Email: [email-masked]

---

From: Brady Montz <[email-masked]>
Date: 13 Oct 1997 17:00:00 -0700

> FvwmIconMan*2*resolution global

Hmmm, tricky tricky. To make sure that everything is in order here, you want
manager #1 to show everything on the current page and manager #2 to show
everything else? That currently won't work. FvwmIconMan assigns windows to
managers based only on the show and dontshow lists, and the resolution acts as 
a filter to control which windows a manager is managing get drawn. 

What you want to do would be cool though, and it's a logical thing to
expect. I just never expected it. I'll look into how to fix this. 

> but two's been quite the headache.

Correct. It seems the other replies covered this. Yes?

-- 
 Brady Montz
 [email-masked]