LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 946|回复: 2

[已解决]FvwmButton 实现的 Dock 自动隐藏 位置和层 问题

[复制链接]
发表于 2010-10-14 23:25:07 | 显示全部楼层 |阅读模式
1.我参考一份含有 autohide Dock 的 fvwm 设置,我想设置 dock 自动隐藏到屏幕的顶部,

而参考配置的 Dock 是在底部隐藏的。

2. Dock 的层好像排在其他窗口的上面,要在 Style 里面设置 Layer 进行控制吗

3, fvwmbutton Swallow 的 Timescript 不能正确的 嵌入到 Dock 里面,每次*出到
    桌面的其他位置


Dock 自动隐藏配置代码:



  1. DestroyFunc AutohidePanelToggle
  2. AddToFunc AutohidePanelToggle
  3. + I ThisWindow (Shaded) enter_handler
  4. + I TestRc (NoMatch) NoWindow enter_handler                                                                        

  5. AddToFunc autohide
  6. + I ThisWindow ($0) Deschedule $[w.id]
  7. + I ThisWindow ($0) ThisWindow (shaded) WindowShade off
  8. + I ThisWindow ($0) Focus
  9. # 鼠标 自动聚焦到 Dock 中央
  10. #+ I ThisWindow ($0) WarpToWindow 50 50
  11. + I TestRc (!Match) All ($0, !shaded) autohide_hide $1 $2
  12. #+ I ThisWindow ($0) KeepRc ThisWindow (shaded) WindowShade off

  13. AddToFunc autohide_hide
  14. + I Schedule $0 $[w.id] WindowShade $1
  15. + I Schedule $0 $[w.id] Deschedule $[w.id]

  16. # }}}

  17. AddToFunc StartFunction
  18. + I Module FvwmAuto FvwmAutohide -menter enter_handler

  19. # 最后一个参数“S”表示隐藏的方向,S 是"向上隐藏"。相应的参数有N, S, E, W, NW, NE, SW or SE
  20. # From : http://www.cnblogs.com/lone/archive/2009/08/09/1542212.html
  21. AddToFunc enter_handler
  22. + I autohide DockButtons 500 2000 S

复制代码


对 autohide 函数的原理不是很懂,不知是否有兄台,可以解释一下!

希望各位 Fvwm 前辈,给些指点,非常感谢!!!

TimeScript 配置脚本代码:



  1. *DockButtons: (2x1, Frame0, Swallow "TimeScript" "FvwmScript scripts/TimeScript")


  2. WindowTitle     {TimeScript}
  3. WindowSize      40 20
  4. Colorset        90

  5. Init
  6. Begin
  7.         Set $time = (GetOutput {date "+%k:%M"} 1 -1)
  8.         ChangeTitle 1 $time
  9.     Set $toggled = 0
  10. End

  11. PeriodicTasks
  12. Begin
  13.         If (RemainderOfDiv (GetTime) 60)==0 Then
  14.         Begin
  15.                 Set $time = (GetOutput {date "+%k:%M"} 1 -1)
  16.                 ChangeTitle 1 $time
  17.         End
  18. End

  19. Widget                  1
  20. Property
  21.         Type            ItemDraw
  22.         Size            40 20
  23.         Position        0 0                                                                                       
  24.         Font            "shadow=0 se:xft:Arial:bold:size=12"
  25.         Flags           NoFocus NoReliefString
  26. Main
  27. Case message of
  28.     SingleClic:
  29.     Begin
  30.         If $toggled==0 Then
  31.         Begin
  32.             Set $toggled = 1
  33.             Do {Module FvwmScript scripts/Calendar}
  34.         End
  35.         Else
  36.         Begin
  37.             Set $toggled = 0
  38.             Do {KillModule FvwmScript scripts/Calendar}
  39.         End
  40.     End
  41. End
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2010-10-15 17:47:43 | 显示全部楼层
问题 1, 通过修改设置 TitleAtBottom 为 TitleAtTop 解决
问题 3,在 Dock 里面去掉了 Time 的显示!
回复 支持 反对

使用道具 举报

发表于 2010-11-19 22:38:14 | 显示全部楼层
楼主的任务栏放哪了呢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表