Beispiel #1
0
    def background_process(self, cmd, stdout=False, stderr=False, env=None):
        '''Add a new background process and begin running it.'''

        process = KProcess()
        #if env:
        #    process.setEnv()
        process.setNextOpenMode(QIODevice.ReadOnly|QIODevice.Text)
        if stdout and stderr:
            process.setOutputChannelMode(KProcess.MergedChannels)
        else:
            if stdout:
                process.setOutputChannelMode(KProcess.OnlyStdoutChannel)
            elif stderr:
                process.setOutputChannelMode(KProcess.OnlyStderrChannel)
        process.setProgram(cmd)
        process.start()

        self.__process = process