+++ /dev/null
-#! python
-# Copyright 2007 Greg Darke <starstuff@optusnet.com.au>
-# Licensed for distribution under the GPL version 2, check COPYING for details
-# Some little helper utils
-
-import subprocess, commands, itertools
-
-__all__ = ('getResolutions', )
-
-def _seperateGroups(lines):
- ret = []
- current_section = []
- for line in lines:
- if line.strip() == '':
- ret.append(current_section)
- current_section = []
- continue
- current_section.append(line)
- if current_section:
- ret.append(current_section)
- return ret
-
-def getResolutions():
- xdpyinfo_status, xdpyinfo_output = commands.getstatusoutput('xdpyinfo')
- lines = xdpyinfo_output.splitlines()
- groups = _seperateGroups(xdpyinfo_output.splitlines())
-
- screens = []
- for screen_data in itertools.islice(groups, 1, None, None):
- _, screen_number = screen_data[0].split()
- # remove the leading and trailing characters
- screen_number = screen_number[1:-1]
-
- _, screen_resolution_str, _, _, _ = screen_data[1].strip().split()
- screen_resolution = screen_resolution_str.split('x')
-
- screens.append( (screen_number, tuple(int(val) for val in screen_resolution)))
- return dict(screens)