Exemplo n.º 1
0
HgConfig::HgConfig(ConfigType configType) :
    m_configType(configType),
    m_config(0)
{
    getConfigFilePath();
    loadConfig();
}
Exemplo n.º 2
0
QColor GeneralConfig::getWhiteSpaceColor() {
/* -returns color of white space when visible in editor */
    //get data from config file
    QString colorString = getConfigData( getConfigFilePath("config/theme.conf"), "Editor", "whitespace-color");

    //process and return value
    QColor c = getColorFromString(colorString);
    if ( c.isValid() ) return c;
    else return QColor(255,255,255);
}
Exemplo n.º 3
0
QColor GeneralConfig::getMarginsBackground() {
/* -returns backgroung color for margins (line numbering etc.) */
    //get data from config file
    QString colorString = getConfigData( getConfigFilePath("config/theme.conf"), "Editor", "margins-background");

    //process and return value
    QColor c = getColorFromString(colorString);
    if ( c.isValid() ) return c;
    else return QColor(200,200,200);
}
Exemplo n.º 4
0
ConfigImpl::ConfigImpl(MemoryPool& p) : ConfigRoot(p), confMessage(p)
{
    // Prepare some stuff

    ConfigFile file(p);
    root_dir = getRootDirectory();
    const int size = FB_NELEM(entries);
    values = FB_NEW(p) ConfigValue[size];

    //string val_sep = ",";
    file.setConfigFilePath(getConfigFilePath());

    // Iterate through the known configuration entries

    for (int i = 0; i < size; i++)
    {
        const ConfigEntry entry = entries[i];
        const string value = getValue(file, entries[i].key);

        if (!value.length())
        {
            // Assign the default value

            values[i] = entries[i].default_value;
            continue;
        }

        // Assign the actual value

        switch (entry.data_type)
        {
        case TYPE_BOOLEAN:
            values[i] = (ConfigValue) asBoolean(value);
            break;
        case TYPE_INTEGER:
            values[i] = (ConfigValue) asInteger(value);
            break;
        case TYPE_STRING:
        {
            const char* src = asString(value);
            char* dst = FB_NEW(p) char[strlen(src) + 1];
            strcpy(dst, src);
            values[i] = (ConfigValue) dst;
        }
        break;
            //case TYPE_STRING_VECTOR:
            //	break;
        }
    }

    if (file.getMessage())
    {
        confMessage = file.getMessage();
    }
}
Exemplo n.º 5
0
QColor GeneralConfig::getMarginsForeground() {
/* -returns foreground color for margins (line numbering etc.) */
    //get data from config file
    QString colorString = getConfigData( getConfigFilePath("config/theme.conf"), "Editor", "margins-foreground");

    //process and return value
    QColor c = getColorFromString(colorString);
    //QColor c = getValueAsColor("editor_theme", "paper_color");
    if ( c.isValid() ) return c;
    else return QColor(0,0,0);
}
Exemplo n.º 6
0
void LogConfigDialog::saveLogConfiguration()
{
  QString fileExtension;
  QString s = QFileDialog::getSaveFileName(this, tr("Save To"), getConfigFilePath(), tr("XML(*.xml);;Text(*.txt);;All(*.*)"), &fileExtension, QFileDialog::DontUseNativeDialog);
  if (s.length() > 0)
  {
    if (!s.contains('.'))
    {
      if (fileExtension.compare(tr("XML(*.xml)"), Qt::CaseInsensitive) == 0)
      {
        s = s + ".xml";
      }
      else if (fileExtension.compare(tr("Text(*.txt)"), Qt::CaseInsensitive) == 0)
      {
        s = s + ".txt";
      }
    }
    setConfigFilePath(s);
    QFile file(s);
    if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
    {
      QMessageBox::warning(this, tr("ERROR"), tr("Failed to open file for writing."));
    }
    else
    {
      QXmlStreamWriter writer(&file);
      if (writer.hasError())
      {
        QMessageBox::warning(this, tr("ERROR"), tr("Failed to create output stream for writing logger."));
      }
      else
      {
        writer.setAutoFormatting(true);
        SimpleLoggerADP logger;
        configureLogger(logger);
        logger.write(writer);
      }
      file.close();
    }
  }
}
Exemplo n.º 7
0
LogConfigDialog::~LogConfigDialog()
{
  QSettings settings;
  settings.setValue("LogConfigDialogGeometry", saveGeometry());
  settings.setValue("LogConfigDialogLastConfigPath", getConfigFilePath());
  if (m_tableModel != nullptr && m_routingTableView != nullptr)
  {
    QString s;
    for (int i=0; i<LogRoutingInfoTableModel::numColumns; ++i)
    {
      if (s.length() > 0)
      {
        s = s + QString(",%1").arg(m_routingTableView->columnWidth(i));
      }
      else
      {
        s = QString("%1").arg(m_routingTableView->columnWidth(i));
      }
    }
    settings.setValue("LogConfigDialogRoutingColumnWidths", s);
  }
}
Exemplo n.º 8
0
bool ConfigXML::createConfigFile()
{
    bool hasGlobal = false, hasFrontend = false, hasAdmin = false;

    QDomDocument document;
    configXMLDoc = &document;

    QDomProcessingInstruction xmldecl = document.createProcessingInstruction("xml", "version=\"1.0\"");
    document.appendChild(xmldecl); 

    // config element
    QDomElement config = document.createElement("config");
    document.appendChild(config);



    // MODULES & VERSION /////////////////////////////////////////
    // modules section
    QDomElement modules = document.createElement("modules");
    config.appendChild(modules);

    // module name
    QDomElement module = document.createElement(CnMn);
    modules.appendChild(module);

    // version
    QDomElement version = document.createElement("version");    
    version.appendChild(document.createTextNode(moduleConf->getModuleVersion()));
    module.appendChild(version);    
    // MODULES & VERSION END /////////////////////////////////////////

    // init global, frontend, admin sections
    QDomElement global = document.createElement("global");
    QDomElement frontend = document.createElement("frontend");
    QDomElement admin = document.createElement("admin");


    // blocks | models | helpers   
    if (moduleConf->getHasBlock()        
        || moduleConf->getHasHelper()
        || moduleConf->getHasModel()
        || moduleConf->getHasScript()
       )
    {
        hasGlobal = true;

        // init blocks, helpers, models sections
        QDomElement blocks = document.createElement("blocks");
        QDomElement helpers = document.createElement("helpers");
        QDomElement models = document.createElement("models");

        if (moduleConf->getHasBlock()) {            
            // block module
            QDomElement blockModule = document.createElement(
                        moduleConf->getModuleName().toLower()
                    );
            blocks.appendChild(blockModule);

            // class
            QDomElement blockClass = document.createElement("class");            
            blockClass.appendChild(document.createTextNode(CnMn + "_Block"));
            blockModule.appendChild(blockClass);

            // blocks section
            global.appendChild(blocks);
        }

        if (moduleConf->getHasHelper()) {            
            // helpers module
            QDomElement helperModule = document.createElement
                    (moduleConf->getModuleName().toLower()
                    );
            helpers.appendChild(helperModule);

            // class
            QDomElement helperClass = document.createElement("class");            
            helperClass.appendChild(document.createTextNode(CnMn + "_Helper"));
            helperModule.appendChild(helperClass);

            // helpers section
            global.appendChild(helpers);
        }

        if (moduleConf->getHasModel()) {            
            // block module
            QDomElement modelModule = document.createElement(moduleConf->getModuleName().toLower());
            models.appendChild(modelModule);

            // class
            QDomElement modelClass = document.createElement("class");            
            modelClass.appendChild(document.createTextNode(CnMn + "_Model"));
            modelModule.appendChild(modelClass);

            // models section
            global.appendChild(models);
        }

        // apply selected rewrites
        for (int i = 0; i < rewrites.size(); i++) {

            hasGlobal = true;

            Rewrite r = rewrites.at(i);

            if (r.getType() == "Block") {
                applyRewrite(r, blocks);
            }

            if (r.getType() == "Helper") {
                applyRewrite(r, helpers);
            }

            if (r.getType() == "Model") {
                applyRewrite(r, models);
            }

            r.createFile();
        }



        //////////////////// EVENTS ///////////////////
        // apply selected events
        QDomElement globalEvents = document.createElement("events");
        QDomElement frontendEvents = document.createElement("events");
        QDomElement adminEvents = document.createElement("events");
        for (int i = 0; i < events.size(); i++) {

            Event e = events.at(i);

            if (e.getArea() == "global") {
                hasGlobal = true;
                applyEvent(e, globalEvents);
            }

            if (e.getArea() == "frontend") {
                hasFrontend = true;
                applyEvent(e, frontendEvents);
            }

            if (e.getArea() == "admin") {
                hasAdmin = true;
                applyEvent(e, adminEvents);
            }

            e.createFile();
        }

        if (globalEvents.childNodes().size() > 0) {
            global.appendChild(globalEvents);
        }

        if (frontendEvents.childNodes().size() > 0) {
            frontend.appendChild(frontendEvents);
        }

        if (adminEvents.childNodes().size() > 0) {
            admin.appendChild(adminEvents);
        }
        //////////////////// EVENTS END ///////////////////



        if (moduleConf->getHasScript()) {

            hasGlobal = true;

            // resources section
            QDomElement resourcesElem = document.createElement("resources");            

            // resources setup module
            QDomElement moduleToSetup = document.createElement(moduleConf->getSetupDirName());
            resourcesElem.appendChild(moduleToSetup);

            // setup section
            QDomElement setupElem = document.createElement("setup");
            moduleToSetup.appendChild(setupElem);

            QDomElement moduleElem = document.createElement("module");
            moduleElem.appendChild(document.createTextNode(CnMn));

            setupElem.appendChild(moduleElem);

            global.appendChild(resourcesElem);
        }        


    }

    if (moduleConf->getHasController() ||
            moduleConf->getHasAdminController()
        )
    {                       
        // frontend router
        if (moduleConf->getHasController()) {

            hasFrontend = true;

            // routers
            QDomElement routers = document.createElement("routers");

            // router module
            QDomElement routerModule1 = document.createElement(
                        moduleConf->getModuleName().toLower()
                    );            

            QDomElement use = document.createElement("use");
            use.appendChild(document.createTextNode("standard"));

            routerModule1.appendChild(use);

            routerModule1.appendChild(createRouterArgs(document));
            routers.appendChild(routerModule1);
            frontend.appendChild(routers);            
        }

        // admin router
        if (moduleConf->getHasAdminController()) {                   

            hasAdmin = true;

            // routers
            QDomElement routers = document.createElement("routers");                        

            // router module
            QDomElement routerModule2 = document.createElement(
                        moduleConf->getModuleName().toLower()
                    );            

            QDomElement use = document.createElement("use");                       
            use.appendChild(document.createTextNode("admin"));

            routerModule2.appendChild(use);          

            routerModule2.appendChild(createRouterArgs(document));
            routers.appendChild(routerModule2);
            admin.appendChild(routers);

        }
    }


    // add sections and write to file
    if (hasGlobal) {
        config.appendChild(global);
    }

    if (hasFrontend) {
        config.appendChild(frontend);
    }

    if (hasAdmin) {
        config.appendChild(admin);
    }

    return writeXML(getConfigFilePath(), document);
}
Exemplo n.º 9
0
void LogConfigDialog::loadLogConfiguration()
{
  QString fileExtension;
  QString s = QFileDialog::getOpenFileName(this, tr("Select Log Configuration File To Open"), getConfigFilePath(), tr("XML(*.xml);;Text(*.txt);;All(*.*)"), &fileExtension, QFileDialog::DontUseNativeDialog);
  if (s.length() > 0)
  {
    setConfigFilePath(s);
    QFile file(s);
    if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
    {
      QMessageBox::warning(this, tr("ERROR"), tr("Failed to open file for reading."));
    }
    else
    {
      QXmlStreamReader reader(&file);
      if (reader.hasError())
      {
        QMessageBox::warning(this, tr("ERROR"), tr("Failed to create output stream for reading logger."));
      }
      else
      {
        SimpleLoggerADP logger;
        logger.read(reader);
        configureDialog(logger);
      }
      file.close();
    }
  }
}