Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Jan Zelenka
prasopes
Commits
044f9608
Commit
044f9608
authored
Oct 05, 2019
by
Yan
Browse files
Added console dock widget pt1
* initial console committed
parent
6e88d312
Changes
2
Hide whitespace changes
Inline
Side-by-side
prasopes/__main__.py
View file @
044f9608
...
@@ -24,6 +24,7 @@ import prasopes.filetools as ft
...
@@ -24,6 +24,7 @@ import prasopes.filetools as ft
import
prasopes.graphtools
as
gt
import
prasopes.graphtools
as
gt
import
prasopes.imagetools
as
imgt
import
prasopes.imagetools
as
imgt
import
prasopes.zcetools
as
zce
import
prasopes.zcetools
as
zce
import
prasopes.console
as
console
import
prasopes.tangoicons
import
prasopes.tangoicons
import
sys
import
sys
import
matplotlib
import
matplotlib
...
@@ -413,6 +414,8 @@ def main():
...
@@ -413,6 +414,8 @@ def main():
treedock
.
closeEvent
=
lambda
event
:
closeOverride
(
treedock
.
closeEvent
=
lambda
event
:
closeOverride
(
event
,
treedock
,
filebrowseract
)
event
,
treedock
,
filebrowseract
)
consoledock
=
console
.
consoleDockWidget
(
locals
())
main_window
.
dragEnterEvent
=
lambda
event
:
drag_entered
(
event
)
main_window
.
dragEnterEvent
=
lambda
event
:
drag_entered
(
event
)
main_window
.
dropEvent
=
lambda
event
:
dropped
(
main_window
.
dropEvent
=
lambda
event
:
dropped
(
event
,
main_window
,
chromatogram
,
spectrum
,
ds
,
ms
,
filename
,
event
,
main_window
,
chromatogram
,
spectrum
,
ds
,
ms
,
filename
,
...
@@ -424,6 +427,7 @@ def main():
...
@@ -424,6 +427,7 @@ def main():
main_window
.
addToolBar
(
QtCore
.
Qt
.
TopToolBarArea
,
toolBar
)
main_window
.
addToolBar
(
QtCore
.
Qt
.
TopToolBarArea
,
toolBar
)
main_window
.
addDockWidget
(
QtCore
.
Qt
.
LeftDockWidgetArea
,
treedock
)
main_window
.
addDockWidget
(
QtCore
.
Qt
.
LeftDockWidgetArea
,
treedock
)
main_window
.
addDockWidget
(
QtCore
.
Qt
.
RightDockWidgetArea
,
paramsdock
)
main_window
.
addDockWidget
(
QtCore
.
Qt
.
RightDockWidgetArea
,
paramsdock
)
main_window
.
addDockWidget
(
QtCore
.
Qt
.
RightDockWidgetArea
,
consoledock
)
main_window
.
setStatusBar
(
barHandler
.
statusBar
)
main_window
.
setStatusBar
(
barHandler
.
statusBar
)
main_window
.
setFocus
()
main_window
.
setFocus
()
...
...
prasopes/console.py
0 → 100644
View file @
044f9608
#!/usr/bin/env python3
from
PyQt5
import
QtWidgets
from
code
import
InteractiveConsole
from
io
import
StringIO
import
contextlib
import
numpy
as
np
def
execfunc
(
inp
,
outp
,
loc
):
stream
=
StringIO
()
console
=
InteractiveConsole
(
locals
=
loc
)
text
=
inp
.
text
()
inp
.
setText
(
""
)
with
contextlib
.
redirect_stdout
(
stream
):
outp
.
append
(
">>>"
+
text
)
console
.
runcode
(
text
)
outtext
=
stream
.
getvalue
()
if
outtext
==
""
:
with
contextlib
.
redirect_stderr
(
StringIO
()):
console
.
runcode
(
"""print(eval('{}'.format(str('"""
+
text
+
"""'))))"""
)
outtext
=
stream
.
getvalue
()
if
outtext
!=
""
:
outp
.
append
(
outtext
[:
-
1
])
def
consoleDockWidget
(
localvars
):
console_output
=
QtWidgets
.
QTextEdit
()
console_output
.
setReadOnly
(
True
)
console_input
=
QtWidgets
.
QLineEdit
()
console_widget
=
QtWidgets
.
QWidget
()
console_dock
=
QtWidgets
.
QDockWidget
()
console_dock
.
setWidget
(
console_widget
)
main_layout
=
QtWidgets
.
QVBoxLayout
(
console_widget
)
main_layout
.
addWidget
(
console_output
)
main_layout
.
addWidget
(
console_input
)
console_input
.
returnPressed
.
connect
(
lambda
:
execfunc
(
console_input
,
console_output
,
localvars
))
return
console_dock
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment