Chinaunix首页 | 论坛 | 博客
  • 博客访问: 303205
  • 博文数量: 69
  • 博客积分: 1626
  • 博客等级: 上尉
  • 技术积分: 785
  • 用 户 组: 普通用户
  • 注册时间: 2007-01-15 19:01
文章分类

全部博文(69)

文章存档

2015年(4)

2014年(4)

2013年(3)

2012年(6)

2011年(1)

2010年(16)

2009年(8)

2008年(18)

2007年(9)

我的朋友

分类: 其他UNIX

2015-04-12 22:46:53

F1: 移动当前窗口到左边SPACE

require 'totalspaces2'
current_spaces = TotalSpaces2.current_space
windows = TotalSpaces2.window_list
if current_spaces > 1
  dest_space = current_spaces - 1
else
  dest_space = 4
end


if !windows.empty?
    current_space_windows = windows.select {
    |window| window[:space_number] == current_spaces
   }
end


if current_space_windows[0]
      win_pra = (current_space_windows[0][:frame].delete"\{\} ").split(',')
      xpos =  win_pra[0].to_i
      ypos =  win_pra[1].to_i 
      off  =  (1920 - win_pra[0].to_i)
      0.step(off,8){|n| TotalSpaces2.move_window(
      current_space_windows[0][:window_id],xpos-n,ypos)
      }
      TotalSpaces2.move_window_to_space(
            current_space_windows[0][:window_id],dest_space)
      if current_space_windows[1]
         TotalSpaces2.set_front_window(current_space_windows[1][:window_id])
      end
      2.times{TotalSpaces2.move_window(
           current_space_windows[0][:window_id],xpos, ypos)
       sleep 0.1}
end   

F2: 移动当前窗口到右边SPACE
require 'totalspaces2'
current_spaces = TotalSpaces2.current_space
windows = TotalSpaces2.window_list
if current_spaces < 4
  dest_space = current_spaces + 1
else
  dest_space = 1
end


if !windows.empty?
    current_space_windows = windows.select {
    |window| window[:space_number] == current_spaces
   }
end


if current_space_windows[0]
      win_pra = (current_space_windows[0][:frame].delete"\{\} ").split(',')
      xpos =  win_pra[0].to_i
      ypos =  win_pra[1].to_i 
      off  =  (1920 - win_pra[0].to_i)
      0.step(off,8){|n| TotalSpaces2.move_window(
      current_space_windows[0][:window_id],xpos+n,ypos)
      }
      TotalSpaces2.move_window_to_space(
            current_space_windows[0][:window_id],dest_space)
      if current_space_windows[1]
         TotalSpaces2.set_front_window(current_space_windows[1][:window_id])
      end
      2.times{TotalSpaces2.move_window(
           current_space_windows[0][:window_id],xpos, ypos)
       sleep 0.1}
end   

F3: 移动非活动窗口到右边SPACE

#!/usr/bin/ruby
require 'totalspaces2'
current_spaces = TotalSpaces2.current_space
windowslist = TotalSpaces2.window_list


if current_spaces < 4
  dest_space = current_spaces + 1
else
  dest_space = 1
end


if !windowslist.empty?
  current_space_windows = windowslist.select {
    |window| window[:space_number] == current_spaces
  }
current_space_windows.each_with_index{
    |list,index| if index > 0 
      win_pra = (list[:frame].delete"\{\} ").split(',')
      xpos =  win_pra[0].to_i
      ypos =  win_pra[1].to_i 
      off  =  (1920 - win_pra[0].to_i)
      0.step(off,10){|n| TotalSpaces2.move_window(
        list[:window_id],xpos+n,ypos)
       }
      TotalSpaces2.move_window_to_space(
        list[:window_id], dest_space)
      2.times{TotalSpaces2.move_window(
        list[:window_id],xpos, ypos)
        sleep 0.1
        }
    end 
    }
end



















阅读(1242) | 评论(0) | 转发(0) |
0

上一篇:移动窗口到当前space,有方向的(优化版本)

下一篇:没有了

给主人留下些什么吧!~~