void uiShow(const bool show) override { if (show) { if (isPipeRunning()) { writeFocusMessage(); return; } carla_stdout("Trying to start UI using \"%s\"", fExtUiPath.buffer()); CarlaExternalUI::setData(fExtUiPath, getSampleRate(), getUiName()); if (! CarlaExternalUI::startPipeServer(true)) { uiClosed(); hostUiUnavailable(); } } else { CarlaExternalUI::stopPipeServer(2000); } }
CarlaBridgeUI::~CarlaBridgeUI() /*noexcept*/ { carla_debug("CarlaBridgeUI::~CarlaBridgeUI()"); if (fLib != nullptr) { lib_close(fLib); fLib = nullptr; } if (isPipeRunning() && ! fQuitReceived) { const CarlaMutexLocker cml(getPipeLock()); writeMessage("exiting\n", 8); flushMessages(); } if (fToolkit != nullptr) { fToolkit->quit(); delete fToolkit; fToolkit = nullptr; } closePipeClient(); }