Main Page
Namespaces
Classes
Files
File List
src
rqt_shell
shell_text_edit.py
Go to the documentation of this file.
1
# Software License Agreement (BSD License)
2
#
3
# Copyright (c) 2012, Dorian Scholz
4
# All rights reserved.
5
#
6
# Redistribution and use in source and binary forms, with or without
7
# modification, are permitted provided that the following conditions
8
# are met:
9
#
10
# * Redistributions of source code must retain the above copyright
11
# notice, this list of conditions and the following disclaimer.
12
# * Redistributions in binary form must reproduce the above
13
# copyright notice, this list of conditions and the following
14
# disclaimer in the documentation and/or other materials provided
15
# with the distribution.
16
# * Neither the name of Willow Garage, Inc. nor the names of its
17
# contributors may be used to endorse or promote products derived
18
# from this software without specific prior written permission.
19
#
20
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
23
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
26
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
27
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
28
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
30
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31
# POSSIBILITY OF SUCH DAMAGE.
32
33
import
subprocess
34
35
from
qt_gui_py_common.console_text_edit
import
ConsoleTextEdit
36
37
38
class
ShellTextEdit
(
ConsoleTextEdit
):
39
40
def
__init__
(self, parent=None, script_path=None):
41
super(ShellTextEdit, self).
__init__
(parent)
42
self.
_add_prompt
()
43
44
def
_exec_code
(self, code):
45
try
:
46
self.
_pipe
= subprocess.Popen([code], shell=
True
, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
47
out, err = self._pipe.communicate()
48
self._stdout.write(out)
49
self._stderr.write(err)
50
except
Exception
as
e:
51
self._stderr.write(str(e) +
'\n'
)
qt_gui_py_common::console_text_edit::ConsoleTextEdit
rqt_shell.shell_text_edit.ShellTextEdit
Definition:
shell_text_edit.py:38
rqt_shell.shell_text_edit.ShellTextEdit._pipe
_pipe
Definition:
shell_text_edit.py:46
rqt_shell.shell_text_edit.ShellTextEdit.__init__
def __init__(self, parent=None, script_path=None)
Definition:
shell_text_edit.py:40
qt_gui_py_common::console_text_edit
rqt_shell.shell_text_edit.ShellTextEdit._exec_code
def _exec_code(self, code)
Definition:
shell_text_edit.py:44
qt_gui_py_common::console_text_edit::ConsoleTextEdit::_add_prompt
def _add_prompt(self)
rqt_shell
Author(s): Dorian Scholz
autogenerated on Fri Jun 7 2019 21:50:05