Bind FvwmPager

I have no idea of where to put this, but here goes.

I have a pager, swallowed in FvwmButtons. Now, what i would like to achieve is simply to bind the entire pager to something (thus removing the usual change desktop function), so it generally acts like a ‘you are here’ sign, which is bound to something (when clicked at). And the very question is, how do i get this working?

Hopefully, the description is understandable… it’s just one of my weak points.

You can’t, since the mouse bindings are internal to the FvwmPager.

– Thomas Adam

Hmm, that complicates things. Any ideas how to make something similar?

What about having a separate button in FvwmButtons that sets the title to the current desk and/or page? That’s already been done, and a solution exists in these forums. Would something like that help?

– Thomas Adam

That will do, thanks for the quick answers.

You can use something similar in terms of FvwmButtons configuration here:

edulinux.homeunix.org/fvwm/fvwmc … aq.html#M1

The only other thing you would need is to rather than make the calling Button change via a function, just use FvwmEvent:

DestroyModuleConfig FE-cd: *
*FE-cd: Cmd Function
*FE-cd: new_page ChangeTitle 
*FE-cd: new_desk ChangeTitle

Module FvwmEvent FE-cd

… which just sets up FvwmEvent – then for the calling Function:

DestroyFunc ChangeTitle
AddToFunc   ChangeTitle
+ I SendToModule myFvwmButtons ChangeButton foo Title "Desk: $[desk.n] - Page: $[pages.nx] $[pages.ny]"

(Or something similar.)

– Thomas Adam

Well, as i’m trying out a few ways, i ended up with something similar. And since it doesn’t quite work i was hoping that you (whoever reads this) will know why and hopefully correct it.Anyway, so far i have this much.

DestroyModuleConfig InfoPanel: * *InfoPanel: Geometry 128x20-0+0 *InfoPanel: Colorset 5 *InfoPanel: Rows 1, Columns 1 *InfoPanel: Frame 0. Padding 0 0 *InfoPanel: Font "Shadow=1 1 SE:xft:Bitstream Vera Sans:style=Roman:size=8" *InfoPanel: (1x1, Swallow InfoPager "Module FvwmEvent InfoPager")

DestroyModuleConfig InfoPager: * *InfoPager: Cmd Exec *InfoPager: new_page 'echo $[page.nx] x $[page.ny]'

You’ve almost got the right idea. You need to change your FvwmButtons
syntax a little, to give it an ID, and also to understand how the
individual button changes.

Here’s the button you should use:

*InfoPanel: (1x1, Id "A", Title '$[page.nx] x $[page.ny]')

Then you can use FvwmEvent as I had it in my earlier post:

DestroyModuleConfig FE-cd: *
*FE-cd: Cmd Function
*FE-cd: new_page ChangeTitle 
*FE-cd: new_desk ChangeTitle

Module FvwmEvent FE-cd

… which just sets up FvwmEvent – then for the calling Function:

DestroyFunc ChangeTitle
AddToFunc   ChangeTitle
+ I SendToModule InfoPanel ChangeButton A Title "$[pages.nx] x $[pages.ny]"

– Thomas Adam

Worked nicely, however there’s still one thing that bugs me, and that being how it counts. I would like it to count the workspace to the bottom left as ’ 1 x 1’ and the top right as ‘3 x 3’, if you see what i mean. It’s nothing i can’t live without but it’d make things a bit more ‘standardized’.

“Counting” starts top-left. So you can either do some sums to convert the
location to something you understand (pointless and misleading, IMO), or
you can just learn the way it works. :slight_smile:

I’m not at all sure what you mean by standardised, either. Standardised
against what?

– Thomas Adam

I count this way (as it is now) with workspaces in general, but if someone who doesn’t gets his hands on this config (i’m distributing it), he will most likely wonder what it is that it counts, since he’s used to read it like a normal grid (x and y scale (yes i know, i’m utterly useless at explaining)). But as i pointed out, it’s a minor thing and nothing two extra lines of documentation can’t handle.