diff options
| author | tassaron | 2017-07-05 06:38:36 -0400 |
|---|---|---|
| committer | tassaron | 2017-07-05 06:38:36 -0400 |
| commit | 52f0f96f16e935e636431b18c855291879fcc0ff (patch) | |
| tree | 21edbc327acc36f8a741442d330f7443285ed29b /src/toolkit.py | |
| parent | ad4dc052d82c32cadddcc0f3f647d1aafac9f05a (diff) | |
use decorator for readability
Diffstat (limited to 'src/toolkit.py')
| -rw-r--r-- | src/toolkit.py | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/toolkit.py b/src/toolkit.py index fe752f4..5cfd5ee 100644 --- a/src/toolkit.py +++ b/src/toolkit.py @@ -31,22 +31,27 @@ def appendUppercase(lst): return lst +def hideCmdWin(func): + ''' Stops CMD window from appearing on Windows. + Adapted from here: http://code.activestate.com/recipes/409002/ + ''' + def decorator(func, commandList, **kwargs): + if sys.platform == 'win32': + startupinfo = subprocess.STARTUPINFO() + startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW + kwargs['startupinfo'] = startupinfo + return func(commandList, **kwargs) + return func + + +@hideCmdWin def checkOutput(commandList, **kwargs): - return _subprocess(subprocess.check_output, commandList, **kwargs) + return subprocess.check_output(commandList, **kwargs) +@hideCmdWin def openPipe(commandList, **kwargs): - return _subprocess(subprocess.Popen, commandList, **kwargs) - - -def _subprocess(func, commandList, **kwargs): - if sys.platform == 'win32': - # Stop CMD window from appearing on Windows - # http://code.activestate.com/recipes/409002/ - startupinfo = subprocess.STARTUPINFO() - startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW - kwargs['startupinfo'] = startupinfo - return func(commandList, shell=False, **kwargs) + return subprocess.Popen(commandList, **kwargs) def disableWhenEncoding(func): |
