Example #1
0
int         ValueMap::readEntry  (const QString& s, int iDefault ){ return readNumEntry(s,iDefault); }
Example #2
0
void
dvbcut_settings::load_settings() {
  int version = value("/version", 0).toInt();
  if (version >= 1) {
    // config format version 1 or later
    beginGroup("/wheel");
      wheel_increments[WHEEL_INCR_NORMAL] = value("/incr_normal", 25*60).toInt();
      wheel_increments[WHEEL_INCR_SHIFT] = value("/incr_shift", 25).toInt();
      wheel_increments[WHEEL_INCR_CTRL] = value("/incr_ctrl", 1).toInt();
      wheel_increments[WHEEL_INCR_ALT] = value("/incr_alt", 15*25*60).toInt();
      wheel_threshold = value("/threshold", 24).toInt();
      // Note: delta is a multiple of 120 (see Qt documentation)
      wheel_delta = value("/delta", 120).toInt();
      if (wheel_delta == 0)
	    wheel_delta = 1;	// avoid devide by zero
    endGroup();	// wheel
    beginGroup("/slider");
      jog_maximum = value("/jog_maximum", 180000).toInt();
      jog_threshold = value("/jog_threshold", 50).toInt();
      // to increase the "zero frames"-region of the jog-slider
      jog_offset = value("/jog_offset", 0.4).toDouble();
      // sub-intervals of jog_maximum
      jog_interval = value("/jog_interval", 1).toInt();
      if (jog_interval < 0)
	    jog_interval = 0;
      lin_interval = value("/lin_interval", 3600).toInt();
      if (lin_interval < 0)
	    lin_interval = 0;
    endGroup();	// slider
    beginGroup("/lastdir");
      lastdir = value("/name", ".").toString();
      lastdir_update = value("/update", true).toBool();
    endGroup(); // lastdir
    beginGroup("/filter");
      idxfilter = value("/idxfilter", DVBCUT_DEFAULT_IDXFILTER).toString();
      prjfilter = value("/prjfilter", DVBCUT_DEFAULT_PRJFILTER).toString();
      loadfilter = value("/loadfilter", DVBCUT_DEFAULT_LOADFILTER).toString();
    endGroup();	// filter
  }
  else {
    // old (unnumbered) config format
    wheel_increments[WHEEL_INCR_NORMAL] = value("/wheel_incr_normal", 25*60).toInt();
    wheel_increments[WHEEL_INCR_SHIFT] = value("/wheel_incr_shift", 25).toInt();
    wheel_increments[WHEEL_INCR_CTRL] = value("/wheel_incr_ctrl", 1).toInt();
    wheel_increments[WHEEL_INCR_ALT] = value("/wheel_incr_alt", 15*25*60).toInt();
    wheel_threshold = value("/wheel_threshold", 24).toInt();
    // Note: delta is a multiple of 120 (see Qt documentation)
    wheel_delta = value("/wheel_delta", 120).toInt();
    if (wheel_delta == 0)
      wheel_delta = 1;	// avoid devide by zero
    jog_maximum = value("/jog_maximum", 180000).toInt();
    jog_threshold = value("/jog_threshold", 50).toInt();
    // to increase the "zero frames"-region of the jog-slider
    jog_offset = value("/jog_offset", 0.4).toDouble();
    // sub-intervals of jog_maximum
    jog_interval = value("/jog_interval", 1).toInt();
    if (jog_interval < 0)
      jog_interval = 0;
    lin_interval = value("/lin_interval", 3600).toInt();
    if (lin_interval < 0)
      lin_interval = 0;
    lastdir = value("/lastdir", ".").toString();
    lastdir_update = true;
    idxfilter = value("/idxfilter", DVBCUT_DEFAULT_IDXFILTER).toString();
    prjfilter = value("/prjfilter", DVBCUT_DEFAULT_PRJFILTER).toString();
    loadfilter = value("/loadfilter", DVBCUT_DEFAULT_LOADFILTER).toString();
    // remove old-style entries
    remove("/wheel_incr_normal");
    remove("/wheel_incr_shift");
    remove("/wheel_incr_ctrl");
    remove("/wheel_incr_alt");
    remove("/wheel_threshold");
    remove("/wheel_delta");
    remove("/jog_maximum");
    remove("/jog_threshold");
    remove("/jog_offset");
    remove("/jog_interval");
    remove("/lin_interval");
    remove("/lastdir");
    remove("/idxfilter");
    remove("/prjfilter");
    remove("/loadfilter");
  }
  if (version >= 2) {
    /* float view scale factor */
    beginGroup("/viewscalefactor");
      viewscalefactor = value("/current", 1.0).toDouble();
      viewscalefactor_custom = value("/custom", 3.0).toDouble();
    endGroup(); // viewscalefactor
  } 
  else {
    viewscalefactor = (double)value("/viewscalefactor", 1).toInt();
    viewscalefactor_custom = 3.0;
    remove("/viewscalefactor");
  }
  export_format = value("/export_format", 0).toInt();
  beginGroup("/recentfiles");
    recentfiles_max = value("/max", 5).toInt();
    recentfiles.clear();
    std::list<std::string> filenames;
    QStringList keys = entryList("/");
    for (unsigned int i = 0; i < recentfiles_max; ++i) {
      QString key = "/" + QString::number(i);
      if (version < 1 && keys.size()>1) {
		// OLD format (2 keys per input file, NO subkeys!)
        QString filename = readEntry(key);
        if (filename.isEmpty())
		  continue;
        filenames.clear();
        filenames.push_back(filename.toStdString());
        QString idxfilename = readEntry(key + "-idx", "");
        recentfiles.push_back(
        std::pair<std::list<std::string>,std::string>(filenames, idxfilename.toStdString()));
      }
      else {
	// NEW format with subkeys and multiple files!
	beginGroup(key);
	  QString filename = value("/0").toString();
	  if (!filename.isEmpty()) {
		// multiple input files?  
		int j=0;
		filenames.clear();
		while(!filename.isEmpty()) {
		  filenames.push_back(filename.toStdString());
		  filename = value("/" + QString::number(++j), "").toString();
		}  
		QString idxfilename = readEntry("/idx", "");
		recentfiles.push_back(
		  std::pair<std::list<std::string>,std::string>(filenames, idxfilename.toStdString()));
	  }
	endGroup();	// key
      }
    }
  endGroup();	// recentfiles
  beginGroup("/labels");
    start_label = value("/start", DVBCUT_DEFAULT_START_LABEL).toString();
    stop_label = value("/stop", DVBCUT_DEFAULT_STOP_LABEL).toString();
    chapter_label = value("/chapter", DVBCUT_DEFAULT_CHAPTER_LABEL).toString();
    bookmark_label = value("/bookmark", DVBCUT_DEFAULT_BOOKMARK_LABEL).toString();
  endGroup();	// labels
  start_bof = value("/start_bof", true).toBool();
  stop_eof = value("/stop_eof", true).toBool();
  beginGroup("/snapshots");
    snapshot_type = value("/type", "PNG").toString();
    snapshot_quality = value("/quality", -1).toInt();
    snapshot_prefix = value("/prefix", "").toString();
    snapshot_delimiter = value("/delimiter", "_").toString();
    snapshot_first = value("/first", 1).toInt();
    snapshot_width = value("/width", 3).toInt();
    snapshot_extension = value("/extension", "png").toString();
    snapshot_range = value("/range", 0).toInt();
    snapshot_samples = value("/samples", 1).toInt();
  endGroup();	// snapshots
  beginGroup("/pipe");
    pipe_command.clear();
    pipe_post.clear();
    pipe_label.clear();
    pipe_format.clear();
    beginGroup("/0");
      QString command = value("/command", DVBCUT_DEFAULT_PIPE_COMMAND).toString();
      QString post = value("/post", DVBCUT_DEFAULT_PIPE_POST).toString();
      QString label = value("/label", DVBCUT_DEFAULT_PIPE_LABEL).toString();
      int format = value("/format", DVBCUT_DEFAULT_PIPE_FORMAT).toInt();
    endGroup();	// 0
    unsigned int i = 0;
    while(!command.isEmpty() && !label.isEmpty()) {
      if(format<0 || format>3) format = 0;
      pipe_command.push_back(command);
      pipe_post.push_back(post);
      pipe_label.push_back(label);
      pipe_format.push_back(format);
      QString key = "/" + QString::number(++i);
      beginGroup(key);
	command = readEntry("/command","");
	post = readEntry("/post","");
	label = readEntry("/label","");
	format = readNumEntry("/format", 0);
      endGroup();	// key
    }
  endGroup();	// pipe
  beginGroup("/chapters");
    // length (>0) or number (<0) of chapter(s)
    chapter_interval = value("/interval", 600*25).toInt();
    // detection of scene changes is rather time comsuming... 
    //chapter_tolerance = readNumEntry("/tolerance", 10*25);
    //... better switch it off per default!
    chapter_tolerance = value("/tolerance", 0).toInt();
    // average color distance needed for a scene change
    chapter_threshold = value("/threshold", 50.).toDouble();
    // minimal length of a chapter
    chapter_minimum = value("/minimum", 200*25).toInt();
  endGroup();	// auto chapters
}
Example #3
0
QVariant KConfigBase::readPropertyEntry(const char *pKey, const QVariant &aDefault) const
{
    if(!hasKey(pKey))
        return aDefault;

    QVariant tmp = aDefault;

    switch(aDefault.type())
    {
        case QVariant::Invalid:
            return QVariant();
        case QVariant::String:
            return QVariant(readEntry(pKey, aDefault.toString()));
        case QVariant::StringList:
            return QVariant(readListEntry(pKey));
        case QVariant::List:
        {
            QStringList strList = readListEntry(pKey);
            QStringList::ConstIterator it = strList.begin();
            QStringList::ConstIterator end = strList.end();
            QValueList< QVariant > list;

            for(; it != end; ++it)
            {
                tmp = *it;
                list.append(tmp);
            }
            return QVariant(list);
        }
        case QVariant::Font:
            return QVariant(readFontEntry(pKey, &tmp.asFont()));
        case QVariant::Point:
            return QVariant(readPointEntry(pKey, &tmp.asPoint()));
        case QVariant::Rect:
            return QVariant(readRectEntry(pKey, &tmp.asRect()));
        case QVariant::Size:
            return QVariant(readSizeEntry(pKey, &tmp.asSize()));
        case QVariant::Color:
            return QVariant(readColorEntry(pKey, &tmp.asColor()));
        case QVariant::Int:
            return QVariant(readNumEntry(pKey, aDefault.toInt()));
        case QVariant::UInt:
            return QVariant(readUnsignedNumEntry(pKey, aDefault.toUInt()));
        case QVariant::LongLong:
            return QVariant(readNum64Entry(pKey, aDefault.toLongLong()));
        case QVariant::ULongLong:
            return QVariant(readUnsignedNum64Entry(pKey, aDefault.toULongLong()));
        case QVariant::Bool:
            return QVariant(readBoolEntry(pKey, aDefault.toBool()), 0);
        case QVariant::Double:
            return QVariant(readDoubleNumEntry(pKey, aDefault.toDouble()));
        case QVariant::DateTime:
            return QVariant(readDateTimeEntry(pKey, &tmp.asDateTime()));
        case QVariant::Date:
            return QVariant(readDateTimeEntry(pKey, &tmp.asDateTime()).date());

        case QVariant::Pixmap:
        case QVariant::Image:
        case QVariant::Brush:
        case QVariant::Palette:
        case QVariant::ColorGroup:
        case QVariant::Map:
        case QVariant::IconSet:
        case QVariant::CString:
        case QVariant::PointArray:
        case QVariant::Region:
        case QVariant::Bitmap:
        case QVariant::Cursor:
        case QVariant::SizePolicy:
        case QVariant::Time:
        case QVariant::ByteArray:
        case QVariant::BitArray:
        case QVariant::KeySequence:
        case QVariant::Pen:
            break;
    }

    Q_ASSERT(0);
    return QVariant();
}
Example #4
0
int KConfigBase::readNumEntry(const QString &pKey, int nDefault) const
{
    return readNumEntry(pKey.utf8().data(), nDefault);
}
Example #5
0
bool Profile::readBoolEntry( const QString& key,  bool def )const {
    return readNumEntry( key, def );
}