Example #1
0
void ExtScript::readConfiguration()
{
    AbstractExtItem::readConfiguration();

    for (int i = directories().count() - 1; i >= 0; i--) {
        if (!QDir(directories().at(i))
                 .entryList(QDir::Files)
                 .contains(fileName()))
            continue;
        QSettings settings(
            QString("%1/%2").arg(directories().at(i)).arg(fileName()),
            QSettings::IniFormat);

        settings.beginGroup(QString("Desktop Entry"));
        setExecutable(settings.value(QString("Exec"), m_executable).toString());
        setPrefix(settings.value(QString("X-AW-Prefix"), m_prefix).toString());
        setStrRedirect(
            settings.value(QString("X-AW-Redirect"), strRedirect()).toString());
        // api == 3
        setFilters(settings.value(QString("X-AW-Filters"), m_filters)
                       .toString()
                       .split(QChar(','), QString::SkipEmptyParts));
        settings.endGroup();
    }

    // update for current API
    if ((apiVersion() > 0) && (apiVersion() < AWESAPI)) {
        qCWarning(LOG_LIB) << "Bump API version from" << apiVersion() << "to"
                           << AWESAPI;
        setApiVersion(AWESAPI);
        writeConfiguration();
    }
}
Example #2
0
QStringList     LibraryHandler::listAllAudioFiles()
{
    QString parentFolder = this->_libDir->path();
    QStringList result;
    QStringList folderContent;
    QStringList allDirs;
    allDirs << parentFolder;
    QDirIterator directories(parentFolder, QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
    while(directories.hasNext())
    {
        directories.next();
        allDirs << directories.filePath();
    }

    // Récupère tous les fichiers audios dans le dossier parent et les sous fichiers
    for (QStringList::Iterator it = allDirs.begin(); it != allDirs.end(); ++it)
    {
        this->_libDir->setPath(*it);
        folderContent.clear();
        folderContent.append(this->_libDir->entryList(QDir::Files));
        qDebug() << "Folder = " << this->_libDir->path();
        for (QStringList::iterator it = folderContent.begin(); it != folderContent.end(); ++it)
        {
            result.push_back(this->_libDir->path() + "/" + (*it));
        }
    }
    this->_libDir->setPath(parentFolder);
    return result;
}
Example #3
0
void FileWatcher::addDirectory(QString root) {
    if (directories().contains(root))
        return;

    QStringList dirs;
    QStringList files;
    if (includeSubdirectories) {
        setupSubDirectories(dirs, files, root);
        if (!dirs.isEmpty())
           addPaths(dirs);
        if (!files.isEmpty())
            addPaths(files);
    } else {
        setupDirectory(files, root);
        if (!root.isEmpty())
            addPath(root);
        if (!files.isEmpty())
            addPaths(files);
    }
    if (scanType == ImportDelete) {
        for (int i=0; i<files.size(); i++) {
            saveFile(files[i]);
        }
    }
    if (scanType == ImportKeep)
        saveFiles = files;

}
short DirParser::getAllSubdirsNum(const QString &name){
    QDirIterator directories(name, QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories);
    short counter=0;
    while(directories.hasNext()){
        directories.next();
        counter++;
    }
    return counter;
}
ArrayList<Directory> Directory::getDirectories() const throw() {
    ArrayList<STLString> pathList;
    FileImplementation::getFileList(mPath, pathList);
    ArrayList<Directory> directories(DEFAULT_ALLOCATOR, pathList.size());
    for(const STLString& path : pathList) if(FileImplementation::getAttributes(path) & FileImplementation::FLAG_DIRECTORY) {
            directories.pushBack(Directory(path));
        }
    return directories;
}
bool CDialogRecordPref::OnInit()
{
  // display the show name in the window
  _window->SetControlLabel(LABEL_SHOW_NAME, _showName.c_str());
  _window->SetControlLabel(LABEL_SHOW_DESCRIPTION, _showDescription.c_str());

  // init record-type
  _spinRecordType = GUI->Control_getSpin(_window, SPIN_CONTROL_RECORD_TYPE);
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30121), 0); // record-once
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30122), 1); // record-season (new episodes)
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30123), 2); // record-season (all episodes)
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30124), 3); // record-season (daily, this timeslot)
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30125), 4); // record-season (weekly, this timeslot)
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30126), 5); // record-season (mon-fri, this timeslot)
  _spinRecordType->AddLabel(XBMC->GetLocalizedString(30127), 6); // record-season (weekends, this timeslot)
  _spinRecordType->SetValue(0);

  // init keep count
  char *msg = XBMC->GetLocalizedString(30131);
  _spinKeepCount = GUI->Control_getSpin(_window, SPIN_CONTROL_KEEP_COUNT);
  _spinKeepCount->AddLabel(XBMC->GetLocalizedString(30131), 0); // keep all recordings
  for (int i=1; i<31; i++)
  {
    char text[20];
    sprintf(text, "%d", i);
    _spinKeepCount->AddLabel(text, i); // keep all recordings
  }
  _spinKeepCount->SetValue(0);

  // init padding
  _spinPrePadding = GUI->Control_getSpin(_window, SPIN_CONTROL_PRE_PADDING);
  _spinPostPadding = GUI->Control_getSpin(_window, SPIN_CONTROL_POST_PADDING);
  for (int i=0; i<90; i++)
  {
    char text[20];
    sprintf(text, "%d", i);
    _spinPrePadding->AddLabel(text, i);
    _spinPostPadding->AddLabel(text, i);
  }
  _spinPrePadding->SetValue(PrePadding);
  _spinPostPadding->SetValue(PostPadding);

  // recording directories
  _spinRecordingDirectory = GUI->Control_getSpin(_window, SPIN_CONTROL_RECORDING_DIR);
  _spinRecordingDirectory->AddLabel(XBMC->GetLocalizedString(30135), 0); // Default
  std::istringstream directories(RecordingDirectory);
  std::string directory;
  int index = 0;
  while (std::getline(directories, directory, ','))
  {
    _spinRecordingDirectory->AddLabel(directory.c_str(), index++);
    _recordingDirectories.push_back(directory);
  }

  return true;
}
Example #7
0
void ControlExport::removeMapsTemp(QString pathDatas) {
    QString pathMaps = Common::pathCombine(pathDatas, "Maps");

    QDirIterator directories(pathMaps, QDir::Dirs | QDir::NoDotAndDotDot);

    while (directories.hasNext()) {
        directories.next();
        QDir(Common::pathCombine(Common::pathCombine(pathMaps, directories
            .fileName()), "temp")).removeRecursively();
    }
}
Example #8
0
void loadTranslators(const QString &locale)
{
	QDir translationsDirectory(qReal::PlatformInfo::invariantSettingsPath("pathToTranslations") + "/" + locale);
	QDirIterator directories(translationsDirectory, QDirIterator::Subdirectories);
	while (directories.hasNext()) {
		for (const QFileInfo &translatorFile : QDir(directories.next()).entryInfoList(QDir::Files)) {
			QTranslator *translator = new QTranslator(qApp);
			translator->load(translatorFile.absoluteFilePath());
			QCoreApplication::installTranslator(translator);
		}
	}
}
DirectoryResource*
DirectoryResourceManager::findFilename(const char* fullName ///< full path to a file
                                       )
{
   OsPath fullFileName(fullName);
   UtlString dirName  = fullFileName.getDirName();
   UtlString fileName;

   fileName.append(fullName, dirName.length(), UtlString::UTLSTRING_TO_END);
   dirName.strip(UtlString::trailing, OsPath::separator[0]);

   DirectoryResource* found = NULL;
   
   Os::Logger::instance().log(FAC_SUPERVISOR, PRI_DEBUG,
                 "DirectoryResourceManager::findFilename: path '%s' file '%s'",
                 dirName.data(), fileName.data());

   {
      OsLock tableMutex(mDirectoryResourceTableLock);
      UtlSListIterator directories(mDirectoryResourceTable);
      DirectoryResource* dir;
   
      while (!found
             && (dir = dynamic_cast<DirectoryResource*>(directories.findNext(&dirName))))
      {
         if ( dir->matches(fileName) )
         {
            found = dir;
         }
      }
   }

   if (found)
   {
      UtlString matched;
      found->appendDescription(matched);
      Os::Logger::instance().log(FAC_SUPERVISOR, PRI_DEBUG,
                    "DirectoryResourceManager::findFilename: '%s' matches %s",
                    fullName, matched.data());
   }
   else
   {
      Os::Logger::instance().log(FAC_SUPERVISOR, PRI_WARNING,
                    "DirectoryResourceManager::findFilename: no match found for '%s'",
                    fullName);
   }
   
   return found;
}
PrintDialogController::PrintDialogController(QString symbol,QWidget *parent)
{
    setSymbol(symbol);
    setPrinter(new QPrinter(QPrinter::HighResolution));
    setSettings(new QSettings());
    setDocumentService(new DocumentServices());
    setSaveToPdf(false);
    setPrintReleated(false);
    setPrintAndSave(1);
    setPreferences(new SettingsPreferencesService());
    setManager(new PrintManager());
    setView(new PrintDialogView(parent,this));
    directories();
    restoreDefaultPrintPreferences();
}
void MainWindow::openProject(const QString &dir){
    basePath = dir + '/';
    SpecificElabPath = dir + "/EL/SpecificElaborations/";
    QString ConfigPath = dir + "/EL/Configs/";
    resize(WIND_WIDTH, WIND_HEIGHT);

    //======================================= Test Subdirectories
    if(!QDir(SpecificElabPath).exists() || !QDir(ConfigPath).exists()){
        QString message = tr("Project does not contain the directory /EL/SpecificElaborations/ or /EL/Configs/");
        ui->tabWidget->setVisible(false);
        ui->elaborateButton->setHidden(true);
        statusBar()->showMessage(message);
        return;
    }

    //======================================= Check if it contains at least one TopLevel
    QDirIterator directories(ConfigPath, QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::NoIteratorFlags);
    QString subpath;

    if(!directories.hasNext()){
        ui->tabWidget->setVisible(false);
        ui->elaborateButton->setHidden(true);
        QString message = tr("Project has no folder inside /EL/Configs/");
        statusBar()->showMessage(message);
        return;
    }

    //======================================= Check if it contains >1 TopLevel
    subpath = directories.next(); //next folder
    if(directories.hasNext()){
        ui->treeView_configs->setRootIndex(dirModel_confs->index(ConfigPath));//>1 TopLevel (error?)
    }
    else
        ui->treeView_configs->setRootIndex(dirModel_confs->index(subpath));//Has 1 TopLevel (go inside)

    ui->treeView_elaborations->setRootIndex(dirModel_elabs->index(SpecificElabPath));

    ui->tabWidget->setVisible(true);
    ui->treeView_elaborations->setVisible(true);

    ui->elaborateButton->setHidden(false);
    QString message = tr("Project Loaded Successfully!");
    resize(WIND_WIDTH, WIND_HEIGHT2);
    statusBar()->showMessage(message);
    //ui->treeView->setCurrentIndex(dirModel->index(directoryRoot));
    saveDirectory(dir);
}
Example #12
0
FileSystemWatcher::~FileSystemWatcher()
{
    if (!d->m_files.isEmpty())
        removeFiles(files());
    if (!d->m_directories.isEmpty())
        removeDirectories(directories());

    if (--(d->m_staticData->m_objectCount) == 0) {
        delete d->m_staticData->m_watcher;
        d->m_staticData->m_watcher = 0;
        d->m_staticData->m_fileCount.clear();
        d->m_staticData->m_directoryCount.clear();
        if (debug)
              qDebug() << this << "Deleted watcher" << d->m_id;
    }
    delete d;
}
Example #13
0
ExtScript *ExtScript::copy(const QString _fileName, const int _number)
{
    qCDebug(LOG_LIB) << "File" << _fileName << "with number" << _number;

    ExtScript *item = new ExtScript(static_cast<QWidget *>(parent()), _fileName,
                                    directories());
    item->setActive(isActive());
    item->setApiVersion(apiVersion());
    item->setComment(comment());
    item->setExecutable(executable());
    item->setInterval(interval());
    item->setName(name());
    item->setNumber(_number);
    item->setPrefix(prefix());
    item->setRedirect(redirect());

    return item;
}
Example #14
0
void ExtScript::writeConfiguration() const
{
    AbstractExtItem::writeConfiguration();

    QSettings settings(
        QString("%1/%2").arg(directories().first()).arg(fileName()),
        QSettings::IniFormat);
    qCInfo(LOG_LIB) << "Configuration file" << settings.fileName();

    settings.beginGroup(QString("Desktop Entry"));
    settings.setValue(QString("Exec"), m_executable);
    settings.setValue(QString("X-AW-Prefix"), m_prefix);
    settings.setValue(QString("X-AW-Redirect"), strRedirect());
    settings.setValue(QString("X-AW-Filters"), m_filters.join(QChar(',')));
    settings.endGroup();

    settings.sync();
}
Example #15
0
std::vector<PathInfo> DriveManager::GetRemovableDrives()
{
    std::vector<PathInfo> availableDrives;

    QDirIterator directories(mediaFolder, QDir::Dirs | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::NoIteratorFlags);

    while(directories.hasNext())
    {
        directories.next();

        PathInfo PathInfo;
        PathInfo.DriveName = directories.fileName().toStdString();

        PathInfo.DrivePath = QString(mediaFolder + directories.fileName()).toStdString();

        RetrievePathInfo(PathInfo);

        availableDrives.push_back(PathInfo);
    }

    return availableDrives;
}
DirectoryResource*
DirectoryResourceManager::find(const UtlString& path,    ///< path of the directory
                               const UtlString& pattern  ///< pattern within directory
                               )
{
   DirectoryResource* found = NULL;
   
   {
      OsLock tableMutex(mDirectoryResourceTableLock);
      UtlSListIterator directories(mDirectoryResourceTable);
      DirectoryResource* dir;
   
      while (!found
             && (dir = dynamic_cast<DirectoryResource*>(directories.findNext(&path))))
      {
         if ( dir->isFilePattern(pattern) )
         {
            found = dir;
         }
      }
   }

   return found;
}