Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENH: Added "Restart Slicer" button into developer section for fast Slicer restarting #584

Closed
wants to merge 2 commits into from
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
ENH: Reorganized developer section buttons horizontally for saving space
  • Loading branch information
che85 committed Sep 20, 2016
commit 0a6ab1d00128c7e364ae1fe23a2b79a9ee9bb50c
30 changes: 19 additions & 11 deletions Base/Python/slicer/ScriptedLoadableModule.py
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,14 @@ def setupDeveloperSection(self):
if not self.developerMode:
return

def createHLayout(elements):
widget = qt.QWidget()
rowLayout = qt.QHBoxLayout()
widget.setLayout(rowLayout)
for element in elements:
rowLayout.addWidget(element)
return widget

#
# Reload and Test area
#
Expand All @@ -95,32 +103,32 @@ def setupDeveloperSection(self):
self.layout.addWidget(self.reloadCollapsibleButton)
reloadFormLayout = qt.QFormLayout(self.reloadCollapsibleButton)

# restart Slicer button
# (use this during development, but remove it when delivering
# your module to users)
self.restartButton = qt.QPushButton("Restart Slicer")
self.restartButton.toolTip = "Restart Slicer"
self.restartButton.name = "ScriptedLoadableModuleTemplate Restart"
reloadFormLayout.addWidget(self.restartButton)
self.restartButton.connect('clicked()', slicer.app.restart)

# reload button
# (use this during development, but remove it when delivering
# your module to users)
self.reloadButton = qt.QPushButton("Reload")
self.reloadButton.toolTip = "Reload this module."
self.reloadButton.name = "ScriptedLoadableModuleTemplate Reload"
reloadFormLayout.addWidget(self.reloadButton)
self.reloadButton.connect('clicked()', self.onReload)

# reload and test button
# (use this during development, but remove it when delivering
# your module to users)
self.reloadAndTestButton = qt.QPushButton("Reload and Test")
self.reloadAndTestButton.toolTip = "Reload this module and then run the self tests."
reloadFormLayout.addWidget(self.reloadAndTestButton)
self.reloadAndTestButton.connect('clicked()', self.onReloadAndTest)

# restart Slicer button
# (use this during development, but remove it when delivering
# your module to users)
self.restartButton = qt.QPushButton("Restart Slicer")
self.restartButton.toolTip = "Restart Slicer"
self.restartButton.name = "ScriptedLoadableModuleTemplate Restart"
self.restartButton.connect('clicked()', slicer.app.restart)

reloadFormLayout.addWidget(createHLayout([self.reloadButton, self.reloadAndTestButton, self.restartButton]))


def setup(self):
# Instantiate and connect default widgets ...
self.setupDeveloperSection()
Expand Down