Browse Source

Misc fixing

tags/1.9.5
falkTX 10 years ago
parent
commit
dd65ea0159
1 changed files with 12 additions and 29 deletions
  1. +12
    -29
      source/carla_host.py

+ 12
- 29
source/carla_host.py View File

@@ -464,10 +464,9 @@ class HostWindow(QMainWindow):

@pyqtSlot()
def slot_fileNew(self):
self.removeAllPlugins()
self.slot_pluginRemoveAll()
self.fProjectFilename = ""
self.setProperWindowTitle()
patchcanvas.clear()

@pyqtSlot()
def slot_fileOpen(self):
@@ -487,7 +486,7 @@ class HostWindow(QMainWindow):
newFile = (ask == QMessageBox.Yes)

if newFile:
self.removeAllPlugins()
self.slot_pluginRemoveAll()
self.fProjectFilename = filename
self.setProperWindowTitle()
self.loadProjectNow()
@@ -548,15 +547,18 @@ class HostWindow(QMainWindow):
QMessageBox.critical(self, self.tr("Error"), self.tr("Could not connect to Audio backend '%s'" % audioDriver))

@pyqtSlot()
def slot_engineStop(self):
def slot_engineStop(self, forced = False):
if self.fPluginCount > 0:
ask = QMessageBox.question(self, self.tr("Warning"), self.tr("There are still some plugins loaded, you need to remove them to stop the engine.\n"
"Do you want to do this now?"),
QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
if ask != QMessageBox.Yes:
return
if not forced:
ask = QMessageBox.question(self, self.tr("Warning"), self.tr("There are still some plugins loaded, you need to remove them to stop the engine.\n"
"Do you want to do this now?"),
QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
if ask != QMessageBox.Yes:
return

self.removeAllPlugins()
self.host.set_engine_about_to_close()
self.host.remove_all_plugins()

if self.host.is_engine_running() and not self.host.engine_close():
print(self.host.get_last_error())
@@ -1246,7 +1248,7 @@ class HostWindow(QMainWindow):
settings.value(CARLA_KEY_MAIN_PRO_THEME_COLOR, "Black", type=str).lower() == "black")
}

self.fMiniCanvasUpdateTimeout = 1000 if self.fSavedSettings[CARLA_KEY_CANVAS_EYE_CANDY] else 0
self.fMiniCanvasUpdateTimeout = 1000 if self.fSavedSettings[CARLA_KEY_CANVAS_EYE_CANDY] == patchcanvas.EYECANDY_FULL else 0

self.setEngineSettings()
self.restartTimersIfNeeded()
@@ -1720,25 +1722,6 @@ class HostWindow(QMainWindow):
self.saveSettings()

if self.host.is_engine_running() and not self.host.isPlugin:
self.host.set_engine_about_to_close()

count = self.host.get_current_plugin_count()

if self.fPluginCount > 0:
# simulate project loading, to disable container
self.ui.act_plugin_remove_all.setEnabled(False)
self.projectLoadingStarted() # FIXME

app = QApplication.instance()
for i in range(count):
app.processEvents()
self.host.remove_plugin(count-i-1)

app.processEvents()

#self.removeAllPlugins()
#self.host.remove_all_plugins()

self.slot_engineStop()

QMainWindow.closeEvent(self, event)


Loading…
Cancel
Save