/[svn]/qsampler/trunk/src/qsamplerOptions.cpp
ViewVC logotype

Diff of /qsampler/trunk/src/qsamplerOptions.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2718 by capela, Thu Jan 22 19:01:32 2015 UTC revision 3038 by capela, Thu Nov 10 16:23:30 2016 UTC
# Line 1  Line 1 
1  // qsamplerOptions.cpp  // qsamplerOptions.cpp
2  //  //
3  /****************************************************************************  /****************************************************************************
4     Copyright (C) 2004-2015, rncbc aka Rui Nuno Capela. All rights reserved.     Copyright (C) 2004-2016, rncbc aka Rui Nuno Capela. All rights reserved.
5     Copyright (C) 2007,2015 Christian Schoenebeck     Copyright (C) 2007,2015 Christian Schoenebeck
6    
7     This program is free software; you can redistribute it and/or     This program is free software; you can redistribute it and/or
# Line 97  void Options::loadOptions (void) Line 97  void Options::loadOptions (void)
97          bMessagesLimit   = m_settings.value("/MessagesLimit", true).toBool();          bMessagesLimit   = m_settings.value("/MessagesLimit", true).toBool();
98          iMessagesLimitLines = m_settings.value("/MessagesLimitLines", 1000).toInt();          iMessagesLimitLines = m_settings.value("/MessagesLimitLines", 1000).toInt();
99          bConfirmRemove   = m_settings.value("/ConfirmRemove", true).toBool();          bConfirmRemove   = m_settings.value("/ConfirmRemove", true).toBool();
100            bConfirmReset    = m_settings.value("/ConfirmReset", true).toBool();
101            bConfirmRestart  = m_settings.value("/ConfirmRestart", true).toBool();
102            bConfirmError    = m_settings.value("/ConfirmError", true).toBool();
103          bKeepOnTop       = m_settings.value("/KeepOnTop", true).toBool();          bKeepOnTop       = m_settings.value("/KeepOnTop", true).toBool();
104          bStdoutCapture   = m_settings.value("/StdoutCapture", true).toBool();          bStdoutCapture   = m_settings.value("/StdoutCapture", true).toBool();
105          bCompletePath    = m_settings.value("/CompletePath", true).toBool();          bCompletePath    = m_settings.value("/CompletePath", true).toBool();
# Line 159  void Options::saveOptions (void) Line 162  void Options::saveOptions (void)
162  {  {
163          // Make program version available in the future.          // Make program version available in the future.
164          m_settings.beginGroup("/Program");          m_settings.beginGroup("/Program");
165          m_settings.setValue("/Version", QSAMPLER_VERSION);          m_settings.setValue("/Version", CONFIG_BUILD_VERSION);
166          m_settings.endGroup();          m_settings.endGroup();
167    
168          // And go into general options group.          // And go into general options group.
# Line 192  void Options::saveOptions (void) Line 195  void Options::saveOptions (void)
195          m_settings.setValue("/MessagesLimit", bMessagesLimit);          m_settings.setValue("/MessagesLimit", bMessagesLimit);
196          m_settings.setValue("/MessagesLimitLines", iMessagesLimitLines);          m_settings.setValue("/MessagesLimitLines", iMessagesLimitLines);
197          m_settings.setValue("/ConfirmRemove", bConfirmRemove);          m_settings.setValue("/ConfirmRemove", bConfirmRemove);
198            m_settings.setValue("/ConfirmReset", bConfirmReset);
199            m_settings.setValue("/ConfirmRestart", bConfirmRestart);
200            m_settings.setValue("/ConfirmError", bConfirmError);
201          m_settings.setValue("/KeepOnTop", bKeepOnTop);          m_settings.setValue("/KeepOnTop", bKeepOnTop);
202          m_settings.setValue("/StdoutCapture", bStdoutCapture);          m_settings.setValue("/StdoutCapture", bStdoutCapture);
203          m_settings.setValue("/CompletePath", bCompletePath);          m_settings.setValue("/CompletePath", bCompletePath);
# Line 331  bool Options::parse_args ( const QString Line 337  bool Options::parse_args ( const QString
337                          return false;                          return false;
338                  }                  }
339                  else if (sArg == "-v" || sArg == "--version") {                  else if (sArg == "-v" || sArg == "--version") {
340                          out << QObject::tr("Qt: %1\n").arg(qVersion());                          out << QObject::tr("Qt: %1\n")
341                                    .arg(qVersion());
342                            out << QObject::tr("%1: %2  (%3)\n")
343                                    .arg(QSAMPLER_TITLE)
344                                    .arg(CONFIG_BUILD_VERSION)
345                                    .arg(CONFIG_BUILD_DATE);
346                  #ifdef CONFIG_LIBGIG                  #ifdef CONFIG_LIBGIG
347                          out << QString("%1: %2\n")                          out << QString("%1: %2\n")
348                                  .arg(gig::libraryName().c_str())                                  .arg(gig::libraryName().c_str())
# Line 340  bool Options::parse_args ( const QString Line 351  bool Options::parse_args ( const QString
351                          out << QString("%1: %2\n")                          out << QString("%1: %2\n")
352                                  .arg(::lscp_client_package())                                  .arg(::lscp_client_package())
353                                  .arg(::lscp_client_version());                                  .arg(::lscp_client_version());
                         out << QObject::tr(QSAMPLER_TITLE ": %1\n").arg(QSAMPLER_VERSION);  
354                          return false;                          return false;
355                  }                  }
356                  else {                  else {
# Line 363  void Options::loadWidgetGeometry ( QWidg Line 373  void Options::loadWidgetGeometry ( QWidg
373  {  {
374          // Try to restore old form window positioning.          // Try to restore old form window positioning.
375          if (pWidget) {          if (pWidget) {
376            //      if (bVisible) pWidget->show(); -- force initial exposure?
377                    m_settings.beginGroup("/Geometry/" + pWidget->objectName());
378            #if QT_VERSION >= 0x050000
379                    const QByteArray& geometry
380                            = m_settings.value("/geometry").toByteArray();
381                    if (!geometry.isEmpty())
382                            pWidget->restoreGeometry(geometry);
383                    else
384            #else//--LOAD_OLD_GEOMETRY
385                  QPoint wpos;                  QPoint wpos;
386                  QSize  wsize;                  QSize  wsize;
                 m_settings.beginGroup("/Geometry/" + pWidget->objectName());  
387                  wpos.setX(m_settings.value("/x", -1).toInt());                  wpos.setX(m_settings.value("/x", -1).toInt());
388                  wpos.setY(m_settings.value("/y", -1).toInt());                  wpos.setY(m_settings.value("/y", -1).toInt());
389                  wsize.setWidth(m_settings.value("/width", -1).toInt());                  wsize.setWidth(m_settings.value("/width", -1).toInt());
390                  wsize.setHeight(m_settings.value("/height", -1).toInt());                  wsize.setHeight(m_settings.value("/height", -1).toInt());
                 if (!bVisible) bVisible = m_settings.value("/visible", false).toBool();  
                 m_settings.endGroup();  
391                  if (wpos.x() > 0 && wpos.y() > 0)                  if (wpos.x() > 0 && wpos.y() > 0)
392                          pWidget->move(wpos);                          pWidget->move(wpos);
393                  if (wsize.width() > 0 && wsize.height() > 0)                  if (wsize.width() > 0 && wsize.height() > 0)
394                          pWidget->resize(wsize);                          pWidget->resize(wsize);
395          //      else                  else
396          //              pWidget->adjustSize();          #endif
397                    pWidget->adjustSize();
398                    if (!bVisible)
399                            bVisible = m_settings.value("/visible", false).toBool();
400                  if (bVisible)                  if (bVisible)
401                          pWidget->show();                          pWidget->show();
402          //      else                  else
403          //              pWidget->hide();                          pWidget->hide();
404                    m_settings.endGroup();
405          }          }
406  }  }
407    
# Line 393  void Options::saveWidgetGeometry ( QWidg Line 413  void Options::saveWidgetGeometry ( QWidg
413          // only save the form geometry while its up and visible)          // only save the form geometry while its up and visible)
414          if (pWidget) {          if (pWidget) {
415                  m_settings.beginGroup("/Geometry/" + pWidget->objectName());                  m_settings.beginGroup("/Geometry/" + pWidget->objectName());
416            #if QT_VERSION >= 0x050000
417                    m_settings.setValue("/geometry", pWidget->saveGeometry());
418            #else//--SAVE_OLD_GEOMETRY
419                  const QPoint& wpos  = pWidget->pos();                  const QPoint& wpos  = pWidget->pos();
420                  const QSize&  wsize = pWidget->size();                  const QSize&  wsize = pWidget->size();
                 if (!bVisible) bVisible = pWidget->isVisible();  
421                  m_settings.setValue("/x", wpos.x());                  m_settings.setValue("/x", wpos.x());
422                  m_settings.setValue("/y", wpos.y());                  m_settings.setValue("/y", wpos.y());
423                  m_settings.setValue("/width", wsize.width());                  m_settings.setValue("/width", wsize.width());
424                  m_settings.setValue("/height", wsize.height());                  m_settings.setValue("/height", wsize.height());
425            #endif
426                    if (!bVisible) bVisible = pWidget->isVisible();
427                  m_settings.setValue("/visible", bVisible);                  m_settings.setValue("/visible", bVisible);
428                  m_settings.endGroup();                  m_settings.endGroup();
429          }          }
# Line 411  void Options::saveWidgetGeometry ( QWidg Line 435  void Options::saveWidgetGeometry ( QWidg
435    
436  void Options::loadComboBoxHistory ( QComboBox *pComboBox, int iLimit )  void Options::loadComboBoxHistory ( QComboBox *pComboBox, int iLimit )
437  {  {
438            const bool bBlockSignals = pComboBox->blockSignals(true);
439    
440          // Load combobox list from configuration settings file...          // Load combobox list from configuration settings file...
441          m_settings.beginGroup("/History/" + pComboBox->objectName());          m_settings.beginGroup("/History/" + pComboBox->objectName());
442    
# Line 418  void Options::loadComboBoxHistory ( QCom Line 444  void Options::loadComboBoxHistory ( QCom
444                  pComboBox->setUpdatesEnabled(false);                  pComboBox->setUpdatesEnabled(false);
445                  pComboBox->setDuplicatesEnabled(false);                  pComboBox->setDuplicatesEnabled(false);
446                  pComboBox->clear();                  pComboBox->clear();
447                  for (int i = 0; i < iLimit; i++) {                  for (int i = 0; i < iLimit; ++i) {
448                          const QString& sText = m_settings.value(                          const QString& sText = m_settings.value(
449                                  "/Item" + QString::number(i + 1)).toString();                                  "/Item" + QString::number(i + 1)).toString();
450                          if (sText.isEmpty())                          if (sText.isEmpty())
# Line 429  void Options::loadComboBoxHistory ( QCom Line 455  void Options::loadComboBoxHistory ( QCom
455          }          }
456    
457          m_settings.endGroup();          m_settings.endGroup();
458    
459            pComboBox->blockSignals(bBlockSignals);
460  }  }
461    
462    
463  void Options::saveComboBoxHistory ( QComboBox *pComboBox, int iLimit )  void Options::saveComboBoxHistory ( QComboBox *pComboBox, int iLimit )
464  {  {
465            const bool bBlockSignals = pComboBox->blockSignals(true);
466    
467          // Add current text as latest item...          // Add current text as latest item...
468          const QString& sCurrentText = pComboBox->currentText();          const QString sCurrentText = pComboBox->currentText();
469          int iCount = pComboBox->count();          int iCount = pComboBox->count();
470          for (int i = 0; i < iCount; i++) {          for (int i = 0; i < iCount; i++) {
471                  const QString& sText = pComboBox->itemText(i);                  const QString& sText = pComboBox->itemText(i);
472                  if (sText == sCurrentText) {                  if (sText == sCurrentText) {
473                          pComboBox->removeItem(i);                          pComboBox->removeItem(i);
474                          iCount--;                          --iCount;
475                          break;                          break;
476                  }                  }
477          }          }
478          while (iCount >= iLimit)          while (iCount >= iLimit)
479                  pComboBox->removeItem(--iCount);                  pComboBox->removeItem(--iCount);
480          pComboBox->insertItem(0, sCurrentText);          pComboBox->insertItem(0, sCurrentText);
481          iCount++;          pComboBox->setCurrentIndex(0);
482            ++iCount;
483    
484          // Save combobox list to configuration settings file...          // Save combobox list to configuration settings file...
485          m_settings.beginGroup("/History/" + pComboBox->objectName());          m_settings.beginGroup("/History/" + pComboBox->objectName());
486          for (int i = 0; i < iCount; i++) {          for (int i = 0; i < iCount; ++i) {
487                  const QString& sText = pComboBox->itemText(i);                  const QString& sText = pComboBox->itemText(i);
488                  if (sText.isEmpty())                  if (sText.isEmpty())
489                          break;                          break;
490                  m_settings.setValue("/Item" + QString::number(i + 1), sText);                  m_settings.setValue("/Item" + QString::number(i + 1), sText);
491          }          }
492          m_settings.endGroup();          m_settings.endGroup();
493    
494            pComboBox->blockSignals(bBlockSignals);
495  }  }
496    
497    
498  int Options::getMaxVoices() {  int Options::getMaxVoices() {
499  #ifndef CONFIG_MAX_VOICES  #ifndef CONFIG_MAX_VOICES
500          return -1;          return -1;

Legend:
Removed from v.2718  
changed lines
  Added in v.3038

  ViewVC Help
Powered by ViewVC