App::App() : QQuickView() , m_translator(NULL) , m_fixtureBrowser(NULL) , m_fixtureManager(NULL) , m_contextManager(NULL) , m_ioManager(NULL) , m_videoProvider(NULL) , m_doc(NULL) , m_docLoaded(false) , m_fileName(QString()) , m_importManager(NULL) { QSettings settings; updateRecentFilesList(); QVariant dir = settings.value(SETTINGS_WORKINGPATH); if (dir.isValid() == true) m_workingPath = dir.toString(); setAccessMask(defaultMask()); connect(this, &App::screenChanged, this, &App::slotScreenChanged); connect(this, SIGNAL(closing(QQuickCloseEvent*)), this, SLOT(slotClosing())); connect(this, &App::sceneGraphInitialized, this, &App::slotSceneGraphInitialized); }
void QucsApp::slotOpenRecent() { QAction *action = qobject_cast<QAction *>(sender()); if (action) { gotoPage(action->data().toString()); updateRecentFilesList(action->data().toString()); } }
App::App() : QQuickView() , m_fixtureBrowser(NULL) , m_fixtureManager(NULL) , m_contextManager(NULL) , m_ioManager(NULL) , m_doc(NULL) , m_docLoaded(false) { updateRecentFilesList(); }
bool App::loadWorkspace(const QString &fileName) { /* Clear existing document data */ clearDocument(); m_docLoaded = false; emit docLoadedChanged(); QString localFilename = fileName; if (localFilename.startsWith("file:")) localFilename = QUrl(fileName).toLocalFile(); if (loadXML(localFilename) == QFile::NoError) { setTitle(QString("%1 - %2").arg(APPNAME).arg(localFilename)); setFileName(localFilename); m_docLoaded = true; updateRecentFilesList(localFilename); emit docLoadedChanged(); m_contextManager->resetContexts(); m_doc->resetModified(); m_videoProvider = new VideoProvider(this, m_doc); // autostart Function if set if (m_doc->startupFunction() != Function::invalidId()) { Function *func = m_doc->function(m_doc->startupFunction()); if (func != NULL) { qDebug() << Q_FUNC_INFO << "Starting startup function. (" << m_doc->startupFunction() << ")"; func->start(m_doc->masterTimer(), FunctionParent::master()); } else { qWarning() << Q_FUNC_INFO << "Startup function does not exist, erasing. (" << m_doc->startupFunction() << ")"; m_doc->setStartupFunction(Function::invalidId()); } } return true; } return false; }
bool App::saveWorkspace(const QString &fileName) { QString localFilename = fileName; if (localFilename.startsWith("file:")) localFilename = QUrl(fileName).toLocalFile(); /* Always use the workspace suffix */ if (localFilename.right(4) != KExtWorkspace) localFilename += KExtWorkspace; /* Set the workspace path before saving the new XML. In this way local files can be loaded even if the workspace file will be moved */ m_doc->setWorkspacePath(QFileInfo(localFilename).absolutePath()); if (saveXML(localFilename) == QFile::NoError) { setTitle(QString("%1 - %2").arg(APPNAME).arg(localFilename)); updateRecentFilesList(localFilename); return true; } return false; }
bool App::loadWorkspace(const QString &fileName) { /* Clear existing document data */ clearDocument(); m_docLoaded = false; emit docLoadedChanged(); QString localFilename = fileName; if (localFilename.startsWith("file:")) localFilename = QUrl(fileName).toLocalFile(); if (loadXML(localFilename) == QFile::NoError) { setTitle(QString("Q Light Controller Plus - %1").arg(localFilename)); setFileName(localFilename); m_docLoaded = true; updateRecentFilesList(localFilename); emit docLoadedChanged(); m_contextManager->resetContexts(); m_doc->resetModified(); return true; } return false; }