ProjectFlask/RunServerDialog.py

Wed, 16 Nov 2022 09:41:50 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 16 Nov 2022 09:41:50 +0100
branch
eric7
changeset 75
7a30d96ea9f6
parent 72
4557829a4acf
child 82
bb14c648099b
permissions
-rw-r--r--

Resorted the import statements with isort.

4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
66
0d3168d0e310 Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 64
diff changeset
3 # Copyright (c) 2020 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a dialog to run the Flask server.
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
10 import re
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
11
75
7a30d96ea9f6 Resorted the import statements with isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 72
diff changeset
12 from PyQt6.QtCore import QProcess, Qt, QTimer, pyqtSlot
64
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
13 from PyQt6.QtGui import QTextCharFormat
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
14 from PyQt6.QtWidgets import QDialog, QDialogButtonBox, QMenu
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
72
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
16 try:
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
17 from eric7.EricGui import EricPixmapCache
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
18 except ImportError:
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
19 from UI import PixmapCache as EricPixmapCache
75
7a30d96ea9f6 Resorted the import statements with isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 72
diff changeset
20
72
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
21 from eric7.EricWidgets import EricMessageBox
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
22 from eric7.EricWidgets.EricApplication import ericApp
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
24 from . import AnsiTools
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
25 from .ServerStartOptionsDialog import ServerStartOptionsDialog
75
7a30d96ea9f6 Resorted the import statements with isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 72
diff changeset
26 from .Ui_RunServerDialog import Ui_RunServerDialog
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
27
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
28
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
29 # TODO: should this be placed into the sidebar as a sidebar widget?
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 class RunServerDialog(QDialog, Ui_RunServerDialog):
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 Class implementing a dialog to run the Flask server.
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 """
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
34
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
35 def __init__(self, plugin, project, parent=None):
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 Constructor
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
38
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
39 @param plugin reference to the plug-in object
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
40 @type PluginProjectFlask
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
41 @param project reference to the project object
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
42 @type Project
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 @param parent reference to the parent widget
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 @type QWidget
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 """
61
fe1e8783a95f - implemented some code simplifications
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 60
diff changeset
46 super().__init__(parent)
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 self.setupUi(self)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
48
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
49 self.__plugin = plugin
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
50 self.__project = project
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
51
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
52 self.__serverOptions = {"development": False}
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
53
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
54 self.__process = None
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
55 self.__serverUrl = ""
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
56
11
da6ef8ab8268 Started support for translations support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
57 self.__ansiRe = re.compile(r"(\x1b\[\d+m)")
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
58
11
da6ef8ab8268 Started support for translations support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
59 self.__urlRe = re.compile(r" \* Running on ([^(]+) \(.*")
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
60
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
61 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setEnabled(True)
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
62 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setDefault(True)
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
63
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
64 self.__defaultTextFormat = self.outputEdit.currentCharFormat()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
65
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
66 self.__initActionsMenu()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
67
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
68 def __initActionsMenu(self):
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
69 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
70 Private method to populate the actions button menu.
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
71 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
72 self.__actionsMenu = QMenu()
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
73 self.__actionsMenu.setTearOffEnabled(True)
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
74 self.__actionsMenu.setToolTipsVisible(True)
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
75 self.__actionsMenu.aboutToShow.connect(self.__showActionsMenu)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
76
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
77 # re-start server
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
78 self.__actionsMenu.addAction(self.tr("Re-start Server"), self.__restartServer)
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
79 self.__restartModeAct = self.__actionsMenu.addAction(
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
80 self.tr("Re-start Server"), self.__restartServerDifferentMode
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
81 )
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
82 self.__actionsMenu.addSeparator()
64
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
83 # re-start server with options
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
84 self.__actionsMenu.addAction(
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
85 self.tr("Re-start Server with Options"), self.__restartServerWithOptions
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
86 )
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
87
72
4557829a4acf Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 70
diff changeset
88 self.menuButton.setIcon(EricPixmapCache.getIcon("actionsToolButton"))
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
89 self.menuButton.setMenu(self.__actionsMenu)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
90
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
91 @pyqtSlot()
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
92 def __showActionsMenu(self):
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
93 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
94 Private slot handling the actions menu about to be shown.
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
95 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
96 if self.__serverOptions["development"]:
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
97 self.__restartModeAct.setText(self.tr("Re-start Server (Production Mode)"))
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
98 else:
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
99 self.__restartModeAct.setText(self.tr("Re-start Server (Development Mode)"))
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
100
11
da6ef8ab8268 Started support for translations support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
101 def startServer(self, development=False, askForOptions=False):
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 Public method to start the Flask server process.
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
104
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
105 @param development flag indicating development mode
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
106 @type bool
11
da6ef8ab8268 Started support for translations support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
107 @param askForOptions flag indicating to ask for server start options
da6ef8ab8268 Started support for translations support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
108 first
da6ef8ab8268 Started support for translations support.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10
diff changeset
109 @type bool
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
110 @return flag indicating success
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111 @rtype bool
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 """
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
113 self.__serverOptions["development"] = development
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
114
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
115 if askForOptions:
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
116 dlg = ServerStartOptionsDialog(self.__serverOptions)
64
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
117 if dlg.exec() != QDialog.DialogCode.Accepted:
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
118 return False
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
119
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
120 self.__serverOptions.update(dlg.getDataDict())
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
121
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
122 workdir, env = self.__project.prepareRuntimeEnvironment(
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
123 development=self.__serverOptions["development"]
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
124 )
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
125 if env is not None:
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
126 command = self.__project.getFlaskCommand()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
127
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
128 self.__process = QProcess()
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
129 self.__process.setProcessEnvironment(env)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
130 self.__process.setWorkingDirectory(workdir)
64
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
131 self.__process.setProcessChannelMode(
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
132 QProcess.ProcessChannelMode.MergedChannels
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
133 )
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
134
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
135 self.__process.readyReadStandardOutput.connect(self.__readStdOut)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
136 self.__process.finished.connect(self.__processFinished)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
137
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
138 self.outputEdit.clear()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
139
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
140 args = ["run"]
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
141 if "host" in self.__serverOptions and self.__serverOptions["host"]:
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
142 args += ["--host", self.__serverOptions["host"]]
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
143 if "port" in self.__serverOptions and self.__serverOptions["port"]:
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
144 args += ["--port", self.__serverOptions["port"]]
10
506c78268b18 Added a few more server start options.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9
diff changeset
145 if "cert" in self.__serverOptions and self.__serverOptions["cert"]:
506c78268b18 Added a few more server start options.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9
diff changeset
146 args += ["--cert", self.__serverOptions["cert"]]
506c78268b18 Added a few more server start options.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9
diff changeset
147 if "key" in self.__serverOptions and self.__serverOptions["key"]:
506c78268b18 Added a few more server start options.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9
diff changeset
148 args += ["--key", self.__serverOptions["key"]]
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
149
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
150 self.__process.start(command, args)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
151 ok = self.__process.waitForStarted(10000)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
152 if not ok:
64
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
153 EricMessageBox.critical(
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
154 None,
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
155 self.tr("Run Flask Server"),
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
156 self.tr(
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
157 """The Flask server process could not be""" """ started."""
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
158 ),
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
159 )
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
160 else:
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
161 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setEnabled(
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
162 False
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
163 )
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
164 self.stopServerButton.setEnabled(True)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
165 self.stopServerButton.setDefault(True)
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
166 self.startBrowserButton.setEnabled(True)
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
167 else:
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
168 ok = False
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
169
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
170 return ok
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
171
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
172 def closeEvent(self, evt):
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
173 """
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
174 Protected method handling a close event.
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
175
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
176 @param evt reference to the close event
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
177 @type QCloseEvent
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
178 """
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
179 self.on_stopServerButton_clicked()
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
180 evt.accept()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
181
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
182 @pyqtSlot()
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
183 def __readStdOut(self):
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
184 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
185 Private slot to add the server process output to the output pane.
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
186 """
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
187 if self.__process is not None:
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
188 out = str(self.__process.readAllStandardOutput(), "utf-8")
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
189 if not self.__serverUrl:
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
190 urlMatch = self.__urlRe.search(out)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
191 if urlMatch:
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
192 self.__serverUrl = urlMatch.group(1)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
193
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
194 for txt in self.__ansiRe.split(out):
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
195 if txt.startswith("\x1b["):
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
196 color = int(txt[2:-1]) # strip off ANSI command parts
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
197 if color == 0:
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
198 self.outputEdit.setCurrentCharFormat(self.__defaultTextFormat)
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
199 elif 30 <= color <= 37:
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
200 brush = AnsiTools.getColor(
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
201 self.__plugin.getPreferences("AnsiColorScheme"), color - 30
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
202 )
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
203 if brush is not None:
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
204 charFormat = QTextCharFormat(self.__defaultTextFormat)
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
205 charFormat.setForeground(brush)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
206 self.outputEdit.setCurrentCharFormat(charFormat)
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
207 else:
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
208 self.outputEdit.insertPlainText(txt)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
209
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
210 @pyqtSlot()
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
211 def __processFinished(self):
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
212 """
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
213 Private slot handling the finishing of the server process.
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
214 """
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
215 if (
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
216 self.__process is not None
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
217 and self.__process.state() != QProcess.ProcessState.NotRunning
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
218 ):
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
219 self.__process.terminate()
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
220 QTimer.singleShot(2000, self.__process.kill)
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
221 self.__process.waitForFinished(3000)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
222
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
223 self.__process = None
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
224
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
225 self.startBrowserButton.setEnabled(False)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
226 self.stopServerButton.setEnabled(False)
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
227 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setEnabled(True)
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
228 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setDefault(True)
64
0ee58185b8df Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 61
diff changeset
229 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setFocus(
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
230 Qt.FocusReason.OtherFocusReason
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
231 )
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
232
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
233 @pyqtSlot()
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
234 def on_stopServerButton_clicked(self):
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
235 """
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
236 Private slot to stop the running server.
4
e164b9ad3819 Started implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
237 """
5
550e5ea385cb Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4
diff changeset
238 self.__processFinished()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
239
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
240 @pyqtSlot()
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
241 def on_startBrowserButton_clicked(self):
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
242 """
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
243 Private slot to start a web browser with the server URL.
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
244 """
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
245 if self.__plugin.getPreferences("UseExternalBrowser"):
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
246 import webbrowser
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
247
6
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
248 webbrowser.open(self.__serverUrl)
d491ccab7343 Continued implementing the "Run Server" function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5
diff changeset
249 else:
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
250 ericApp().getObject("UserInterface").launchHelpViewer(self.__serverUrl)
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
251
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
252 @pyqtSlot()
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
253 def __restartServer(self):
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
254 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
255 Private slot to restart the server process.
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
256 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
257 # step 1: stop the current server
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
258 self.on_stopServerButton_clicked()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
259
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
260 # step 2: start a new server
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
261 self.startServer(development=self.__serverOptions["development"])
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
262
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
263 @pyqtSlot()
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
264 def __restartServerDifferentMode(self):
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
265 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
266 Private slot to restart the server process with the opposite mode.
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
267 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
268 # step 1: stop the current server
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
269 self.on_stopServerButton_clicked()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
270
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
271 # step 2: start a new server
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
272 self.startServer(development=not self.__serverOptions["development"])
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
273
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
274 @pyqtSlot()
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
275 def __restartServerWithOptions(self):
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
276 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
277 Private slot to restart the server asking for start options.
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
278 """
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
279 # step 1: stop the current server
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
280 self.on_stopServerButton_clicked()
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
281
9
79094fb72c18 Continued implementing various flask actions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
282 # step 2: start a new server
70
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
283 self.startServer(
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
284 development=self.__serverOptions["development"], askForOptions=True
22e1d0f69668 Reformatted source code with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 66
diff changeset
285 )

eric ide

mercurial