[ui] add "New Pipeline" submenu

This commit is contained in:
Fabien Castan 2020-03-05 11:53:27 +01:00
parent c9061f3fec
commit 089289beae
2 changed files with 17 additions and 4 deletions

View file

@ -314,6 +314,17 @@ ApplicationWindow {
shortcut: "Ctrl+N" shortcut: "Ctrl+N"
onTriggered: ensureSaved(function() { _reconstruction.new() }) onTriggered: ensureSaved(function() { _reconstruction.new() })
} }
Menu {
title: "New Pipeline"
Action {
text: "Photogrammetry"
onTriggered: ensureSaved(function() { _reconstruction.new("photogrammetry") })
}
Action {
text: "HDRI"
onTriggered: ensureSaved(function() { _reconstruction.new("hdri") })
}
}
Action { Action {
text: "Open" text: "Open"
shortcut: "Ctrl+O" shortcut: "Ctrl+O"

View file

@ -403,17 +403,19 @@ class Reconstruction(UIGraph):
self._defaultPipeline = defaultPipeline self._defaultPipeline = defaultPipeline
@Slot() @Slot()
def new(self): @Slot(str)
def new(self, pipeline=None):
p = pipeline if pipeline != None else self._defaultPipeline
""" Create a new photogrammetry pipeline. """ """ Create a new photogrammetry pipeline. """
if self._defaultPipeline.lower() == "photogrammetry": if p.lower() == "photogrammetry":
# default photogrammetry pipeline # default photogrammetry pipeline
self.setGraph(multiview.photogrammetry()) self.setGraph(multiview.photogrammetry())
elif self._defaultPipeline.lower() == "hdri": elif p.lower() == "hdri":
# default hdri pipeline # default hdri pipeline
self.setGraph(multiview.hdri()) self.setGraph(multiview.hdri())
else: else:
# use the user-provided default photogrammetry project file # use the user-provided default photogrammetry project file
self.load(self._defaultPipeline, setupProjectFile=False) self.load(p, setupProjectFile=False)
def load(self, filepath, setupProjectFile=True): def load(self, filepath, setupProjectFile=True):
try: try: