Advertisement
Guest User

extensionloader.cpp

a guest
Jun 23rd, 2019
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include "extensionloader.h"
  2.  
  3. ExtensionLoader::ExtensionLoader(QObject *parent) : QObject(parent){
  4.     setup();
  5. }
  6.  
  7. void ExtensionLoader::classBegin() {}
  8. void ExtensionLoader::componentComplete() {
  9.     reload();
  10. }
  11.  
  12. void ExtensionLoader::setup() {
  13.     QString configPath = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
  14.     m_extensionsDir = QDir(configPath);
  15.     m_extensionsDir.mkpath(configPath+"/"+m_configDirName);
  16.     m_extensionsDir.cd(configPath+"/"+m_configDirName);
  17. }
  18.  
  19. void ExtensionLoader::reload() {
  20.     setup();
  21.     m_extensionsDir.mkdir(m_extensionType);
  22.     m_extensionsDir.cd(m_extensionType);
  23.     QStringList filterList;
  24.     filterList << "*.qml";
  25.     QFileInfoList extensionsList = m_extensionsDir.entryInfoList(filterList, QDir::Files | QDir::Readable, QDir::Name);
  26.  
  27.     m_extensionsList = QList<QString>();
  28.  
  29.     for(int i=0; i<extensionsList.length(); i++) {
  30.         QFileInfo fileInfo = extensionsList[i];
  31.         m_extensionsList.append(fileInfo.path());
  32.     }
  33. }
  34.  
  35. QString ExtensionLoader::configDirName() {
  36.     return m_configDirName;
  37. }
  38. void ExtensionLoader::setConfigDirName(QString &name) {
  39.     m_configDirName = name;
  40. }
  41.  
  42. QString ExtensionLoader::type() {
  43.     return m_extensionType;
  44. }
  45. void ExtensionLoader::setType(QString &type) {
  46.     m_extensionType = type;
  47. }
  48.  
  49. QList<QString> ExtensionLoader::extensionsList() {
  50.     return m_extensionsList;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement