Move operation won't move in start function.

I’m having trouble moving an FvwmIconMan offscreen on startup. There are 2 FvwmIconMan’s running called IManUp and IManDown. When “All (IManDown) Move -30000 -30000” is executed from FvwmConsole, it moves offscreen as expected. But when executed from the start function IManDown stays on screen.

[code]DestroyFunc StartFunction
AddToFunc StartFunction

  • I SetEnv MBColor $[MiniButtonBack]
  • I PipeRead “$[ConfigPath]/create_minibuttons.sh”
  • I PipeRead “$[ConfigPath]/create_iconbuttons.sh”
  • I Module FvwmButtons MiniButtons1
  • I Module FvwmAuto 20
  • I Module FvwmConsole -g 90x10-1-1 -fg green6 -bg black -fn 9x15bold

Move ImanDown offscreen

  • I Wait IManDown
  • I All (IManDown) Move -30000 -30000
    [/code]
    Thanks for your suggestions,
    Skip

That should read:

+ I Next (IManDown) Move -30000 -30000

– Thomas Adam

+ I Next (IManDown) Move -30000 -30000

doesn’t work either. Very puzzling.
Skip

Where’s the line that starts the module in the first place? Generally speaking:

AddToFunc StartFunction
[...]
+ I Module FvwmIconMan some_alias
+ I Wait some_alias
+ I Next (some_alias) Move foo bar

– Thomas Adam

IManDown module is started in:

[code]

  • I PipeRead “$[ConfigPath]/create_iconbuttons.sh”[/code]

I have already tried something like:

[code]AddToFunc StartFunction
[…]

  • I Module FvwmIconMan some_alias
  • I Wait some_alias
  • I Next (some_alias) Move foo bar [/code]
    And it didn’t work, either. But I’ll give it another try. I thought that “+ Wait IManDown” would insure that it was on screen before trying to Move it.
    Skip

Heh. It would work if the alias supplied to FvwmIconMan was the actual name of the window. It isn’t – and the ‘Wait’ command works by title only. What you need to do is:

[code]

  • I Module FvwmIconMan some_alias
  • I Wait FvwmIconMan
  • I Next (FvwmIconMan) Move foo bar [/code]

Of course, that won’t help you distinguish between two different instances of FvwmIconMan. The only way I can see you getting around this is to swallow one of them in FvwmButtons, and to use the alias of the FvwmButtons as the matching condition to ‘Wait’ and ‘Next’.

I consider FvwmIconMan not setting it’s WM_NAME to that of an alias a bug, quite frankly.

– Thomas Adam

The following appears to work (it waits for the other FvwmIconMan [IManUp] instead of IManDown). I have another work around as well using WarpToWindow and FvwmAuto which I prefer to swallowing in a button.

[code]AddToFunc StartFunction

  • I Module FvwmIconMan IManUp
  • I Module FvwmIconMan IManDown
  • I Wait IManUp
  • I All (IManDown) Move -30000 -30000[/code]
    Thanks for your help again, Thomas.
    Skip