/[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 1504 by capela, Wed Nov 21 11:46:40 2007 UTC revision 1509 by capela, Thu Nov 22 11:10:44 2007 UTC
# Line 41  Line 41 
41  qsamplerOptions::qsamplerOptions (void)  qsamplerOptions::qsamplerOptions (void)
42          : m_settings(QSAMPLER_DOMAIN, QSAMPLER_TITLE)          : m_settings(QSAMPLER_DOMAIN, QSAMPLER_TITLE)
43  {  {
44      // Begin into general options group.          // Begin into general options group.
45      m_settings.beginGroup("/Options");          m_settings.beginGroup("/Options");
46    
47      // Load server options...          // Load server options...
48      m_settings.beginGroup("/Server");          m_settings.beginGroup("/Server");
49      sServerHost    = m_settings.value("/ServerHost", "localhost").toString();          sServerHost    = m_settings.value("/ServerHost", "localhost").toString();
50      iServerPort    = m_settings.value("/ServerPort", 8888).toInt();          iServerPort    = m_settings.value("/ServerPort", 8888).toInt();
51      iServerTimeout = m_settings.value("/ServerTimeout", 1000).toInt();          iServerTimeout = m_settings.value("/ServerTimeout", 1000).toInt();
52      bServerStart   = m_settings.value("/ServerStart", true).toBool();          bServerStart   = m_settings.value("/ServerStart", true).toBool();
53      sServerCmdLine = m_settings.value("/ServerCmdLine", "linuxsampler").toString();          sServerCmdLine = m_settings.value("/ServerCmdLine", "linuxsampler").toString();
54      iStartDelay    = m_settings.value("/StartDelay", 3).toInt();          iStartDelay    = m_settings.value("/StartDelay", 3).toInt();
55      m_settings.endGroup();          m_settings.endGroup();
56    
57      // Load display options...          // Load display options...
58      m_settings.beginGroup("/Display");          m_settings.beginGroup("/Display");
59      sDisplayFont     = m_settings.value("/DisplayFont").toString();          sDisplayFont     = m_settings.value("/DisplayFont").toString();
60      bDisplayEffect   = m_settings.value("/DisplayEffect", true).toBool();          bDisplayEffect   = m_settings.value("/DisplayEffect", true).toBool();
61      bAutoRefresh     = m_settings.value("/AutoRefresh", true).toBool();          bAutoRefresh     = m_settings.value("/AutoRefresh", true).toBool();
62      iAutoRefreshTime = m_settings.value("/AutoRefreshTime", 1000).toInt();          iAutoRefreshTime = m_settings.value("/AutoRefreshTime", 1000).toInt();
63      iMaxVolume       = m_settings.value("/MaxVolume", 100).toInt();          iMaxVolume       = m_settings.value("/MaxVolume", 100).toInt();
64      sMessagesFont    = m_settings.value("/MessagesFont").toString();          sMessagesFont    = m_settings.value("/MessagesFont").toString();
65      bMessagesLimit   = m_settings.value("/MessagesLimit", true).toBool();          bMessagesLimit   = m_settings.value("/MessagesLimit", true).toBool();
66      iMessagesLimitLines = m_settings.value("/MessagesLimitLines", 1000).toInt();          iMessagesLimitLines = m_settings.value("/MessagesLimitLines", 1000).toInt();
67      bConfirmRemove   = m_settings.value("/ConfirmRemove", true).toBool();          bConfirmRemove   = m_settings.value("/ConfirmRemove", true).toBool();
68      bKeepOnTop       = m_settings.value("/KeepOnTop", true).toBool();          bKeepOnTop       = m_settings.value("/KeepOnTop", true).toBool();
69      bStdoutCapture   = m_settings.value("/StdoutCapture", true).toBool();          bStdoutCapture   = m_settings.value("/StdoutCapture", true).toBool();
70      bCompletePath    = m_settings.value("/CompletePath", true).toBool();          bCompletePath    = m_settings.value("/CompletePath", true).toBool();
71      iMaxRecentFiles  = m_settings.value("/MaxRecentFiles", 5).toInt();          iMaxRecentFiles  = m_settings.value("/MaxRecentFiles", 5).toInt();
72      bInstrumentNames = m_settings.value("/InstrumentNames", false).toBool();          bInstrumentNames = m_settings.value("/InstrumentNames", false).toBool();
73      m_settings.endGroup();          m_settings.endGroup();
74    
75      // And go into view options group.          // And go into view options group.
76      m_settings.beginGroup("/View");          m_settings.beginGroup("/View");
77      bMenubar     = m_settings.value("/Menubar", true).toBool();          bMenubar     = m_settings.value("/Menubar", true).toBool();
78      bToolbar     = m_settings.value("/Toolbar", true).toBool();          bToolbar     = m_settings.value("/Toolbar", true).toBool();
79      bStatusbar   = m_settings.value("/Statusbar", true).toBool();          bStatusbar   = m_settings.value("/Statusbar", true).toBool();
80      bAutoArrange = m_settings.value("/AutoArrange", true).toBool();          bAutoArrange = m_settings.value("/AutoArrange", true).toBool();
81      m_settings.endGroup();          m_settings.endGroup();
82    
83      m_settings.endGroup(); // Options group.          m_settings.endGroup(); // Options group.
84    
85          // Recent file list.          // Recent file list.
86          recentFiles.clear();          recentFiles.clear();
# Line 93  qsamplerOptions::qsamplerOptions (void) Line 93  qsamplerOptions::qsamplerOptions (void)
93          }          }
94          m_settings.endGroup();          m_settings.endGroup();
95    
96      // Last but not least, get the default directories.          // Last but not least, get the default directories.
97      m_settings.beginGroup("/Default");          m_settings.beginGroup("/Default");
98      sSessionDir    = m_settings.value("/SessionDir").toString();          sSessionDir    = m_settings.value("/SessionDir").toString();
99      sInstrumentDir = m_settings.value("/InstrumentDir").toString();          sInstrumentDir = m_settings.value("/InstrumentDir").toString();
100      sEngineName    = m_settings.value("/EngineName").toString();          sEngineName    = m_settings.value("/EngineName").toString();
101      sAudioDriver   = m_settings.value("/AudioDriver").toString();          sAudioDriver   = m_settings.value("/AudioDriver").toString();
102      sMidiDriver    = m_settings.value("/MidiDriver").toString();          sMidiDriver    = m_settings.value("/MidiDriver").toString();
103      iMidiMap       = m_settings.value("/MidiMap",  0).toInt();          iMidiMap       = m_settings.value("/MidiMap",  0).toInt();
104      iMidiBank      = m_settings.value("/MidiBank", 0).toInt();          iMidiBank      = m_settings.value("/MidiBank", 0).toInt();
105      iMidiProg      = m_settings.value("/MidiProg", 0).toInt();          iMidiProg      = m_settings.value("/MidiProg", 0).toInt();
106      iVolume        = m_settings.value("/Volume", 100).toInt();          iVolume        = m_settings.value("/Volume", 100).toInt();
107      iLoadMode      = m_settings.value("/Loadmode", 0).toInt();          iLoadMode      = m_settings.value("/Loadmode", 0).toInt();
108      m_settings.endGroup();          m_settings.endGroup();
109  }  }
110    
111    
112  // Default Destructor.  // Default Destructor.
113  qsamplerOptions::~qsamplerOptions (void)  qsamplerOptions::~qsamplerOptions (void)
114  {  {
115      // Make program version available in the future.          // Make program version available in the future.
116      m_settings.beginGroup("/Program");          m_settings.beginGroup("/Program");
117      m_settings.setValue("/Version", QSAMPLER_VERSION);          m_settings.setValue("/Version", QSAMPLER_VERSION);
118      m_settings.endGroup();          m_settings.endGroup();
   
     // And go into general options group.  
     m_settings.beginGroup("/Options");  
   
     // Save server options.  
     m_settings.beginGroup("/Server");  
     m_settings.setValue("/ServerHost", sServerHost);  
     m_settings.setValue("/ServerPort", iServerPort);  
     m_settings.setValue("/ServerTimeout", iServerTimeout);  
     m_settings.setValue("/ServerStart", bServerStart);  
     m_settings.setValue("/ServerCmdLine", sServerCmdLine);  
     m_settings.setValue("/StartDelay", iStartDelay);  
     m_settings.endGroup();  
   
     // Save display options.  
     m_settings.beginGroup("/Display");  
     m_settings.setValue("/DisplayFont", sDisplayFont);  
     m_settings.setValue("/DisplayEffect", bDisplayEffect);  
     m_settings.setValue("/AutoRefresh", bAutoRefresh);  
     m_settings.setValue("/AutoRefreshTime", iAutoRefreshTime);  
     m_settings.setValue("/MaxVolume", iMaxVolume);  
     m_settings.setValue("/MessagesFont", sMessagesFont);  
     m_settings.setValue("/MessagesLimit", bMessagesLimit);  
     m_settings.setValue("/MessagesLimitLines", iMessagesLimitLines);  
     m_settings.setValue("/ConfirmRemove", bConfirmRemove);  
     m_settings.setValue("/KeepOnTop", bKeepOnTop);  
     m_settings.setValue("/StdoutCapture", bStdoutCapture);  
     m_settings.setValue("/CompletePath", bCompletePath);  
     m_settings.setValue("/MaxRecentFiles", iMaxRecentFiles);  
     m_settings.setValue("/InstrumentNames", bInstrumentNames);  
     m_settings.endGroup();  
   
     // View options group.  
     m_settings.beginGroup("/View");  
     m_settings.setValue("/Menubar", bMenubar);  
     m_settings.setValue("/Toolbar", bToolbar);  
     m_settings.setValue("/Statusbar", bStatusbar);  
     m_settings.setValue("/AutoArrange", bAutoArrange);  
     m_settings.endGroup();  
119    
120      m_settings.endGroup(); // Options group.          // And go into general options group.
121            m_settings.beginGroup("/Options");
122    
123            // Save server options.
124            m_settings.beginGroup("/Server");
125            m_settings.setValue("/ServerHost", sServerHost);
126            m_settings.setValue("/ServerPort", iServerPort);
127            m_settings.setValue("/ServerTimeout", iServerTimeout);
128            m_settings.setValue("/ServerStart", bServerStart);
129            m_settings.setValue("/ServerCmdLine", sServerCmdLine);
130            m_settings.setValue("/StartDelay", iStartDelay);
131            m_settings.endGroup();
132    
133      // Recent file list.          // Save display options.
134            m_settings.beginGroup("/Display");
135            m_settings.setValue("/DisplayFont", sDisplayFont);
136            m_settings.setValue("/DisplayEffect", bDisplayEffect);
137            m_settings.setValue("/AutoRefresh", bAutoRefresh);
138            m_settings.setValue("/AutoRefreshTime", iAutoRefreshTime);
139            m_settings.setValue("/MaxVolume", iMaxVolume);
140            m_settings.setValue("/MessagesFont", sMessagesFont);
141            m_settings.setValue("/MessagesLimit", bMessagesLimit);
142            m_settings.setValue("/MessagesLimitLines", iMessagesLimitLines);
143            m_settings.setValue("/ConfirmRemove", bConfirmRemove);
144            m_settings.setValue("/KeepOnTop", bKeepOnTop);
145            m_settings.setValue("/StdoutCapture", bStdoutCapture);
146            m_settings.setValue("/CompletePath", bCompletePath);
147            m_settings.setValue("/MaxRecentFiles", iMaxRecentFiles);
148            m_settings.setValue("/InstrumentNames", bInstrumentNames);
149            m_settings.endGroup();
150    
151            // View options group.
152            m_settings.beginGroup("/View");
153            m_settings.setValue("/Menubar", bMenubar);
154            m_settings.setValue("/Toolbar", bToolbar);
155            m_settings.setValue("/Statusbar", bStatusbar);
156            m_settings.setValue("/AutoArrange", bAutoArrange);
157            m_settings.endGroup();
158    
159            m_settings.endGroup(); // Options group.
160    
161            // Recent file list.
162          int iFile = 0;          int iFile = 0;
163          m_settings.beginGroup("/RecentFiles");          m_settings.beginGroup("/RecentFiles");
164          QStringListIterator iter(recentFiles);          QStringListIterator iter(recentFiles);
# Line 166  qsamplerOptions::~qsamplerOptions (void) Line 166  qsamplerOptions::~qsamplerOptions (void)
166                  m_settings.setValue("/File" + QString::number(++iFile), iter.next());                  m_settings.setValue("/File" + QString::number(++iFile), iter.next());
167          m_settings.endGroup();          m_settings.endGroup();
168    
169      // Default directories.          // Default directories.
170      m_settings.beginGroup("/Default");          m_settings.beginGroup("/Default");
171      m_settings.setValue("/SessionDir", sSessionDir);          m_settings.setValue("/SessionDir", sSessionDir);
172      m_settings.setValue("/InstrumentDir", sInstrumentDir);          m_settings.setValue("/InstrumentDir", sInstrumentDir);
173      m_settings.setValue("/EngineName", sEngineName);          m_settings.setValue("/EngineName", sEngineName);
174      m_settings.setValue("/AudioDriver", sAudioDriver);          m_settings.setValue("/AudioDriver", sAudioDriver);
175      m_settings.setValue("/MidiDriver", sMidiDriver);          m_settings.setValue("/MidiDriver", sMidiDriver);
176      m_settings.setValue("/MidiMap", iMidiMap);          m_settings.setValue("/MidiMap", iMidiMap);
177      m_settings.setValue("/MidiBank", iMidiBank);          m_settings.setValue("/MidiBank", iMidiBank);
178      m_settings.setValue("/MidiProg", iMidiProg);          m_settings.setValue("/MidiProg", iMidiProg);
179      m_settings.setValue("/Volume", iVolume);          m_settings.setValue("/Volume", iVolume);
180      m_settings.setValue("/Loadmode", iLoadMode);          m_settings.setValue("/Loadmode", iLoadMode);
181      m_settings.endGroup();          m_settings.endGroup();
182  }  }
183    
184  //-------------------------------------------------------------------------  //-------------------------------------------------------------------------
# Line 187  qsamplerOptions::~qsamplerOptions (void) Line 187  qsamplerOptions::~qsamplerOptions (void)
187    
188  QSettings& qsamplerOptions::settings (void)  QSettings& qsamplerOptions::settings (void)
189  {  {
190      return m_settings;          return m_settings;
191  }  }
192    
193    
# Line 215  void qsamplerOptions::print_usage ( cons Line 215  void qsamplerOptions::print_usage ( cons
215  bool qsamplerOptions::parse_args ( int argc, char **argv )  bool qsamplerOptions::parse_args ( int argc, char **argv )
216  {  {
217          QTextStream out(stderr);          QTextStream out(stderr);
218      const QString sEol = "\n\n";          const QString sEol = "\n\n";
219      int iCmdArgs = 0;          int iCmdArgs = 0;
220    
221      for (int i = 1; i < argc; i++) {          for (int i = 1; i < argc; i++) {
222    
223          if (iCmdArgs > 0) {                  if (iCmdArgs > 0) {
224              sSessionFile += " ";                          sSessionFile += " ";
225              sSessionFile += argv[i];                          sSessionFile += argv[i];
226              iCmdArgs++;                          iCmdArgs++;
227              continue;                          continue;
228          }                  }
229    
230          QString sArg = argv[i];                  QString sArg = argv[i];
231          QString sVal = QString::null;                  QString sVal = QString::null;
232          int iEqual = sArg.indexOf("=");                  int iEqual = sArg.indexOf("=");
233          if (iEqual >= 0) {                  if (iEqual >= 0) {
234              sVal = sArg.right(sArg.length() - iEqual - 1);                          sVal = sArg.right(sArg.length() - iEqual - 1);
235              sArg = sArg.left(iEqual);                          sArg = sArg.left(iEqual);
236          }                  }
237          else if (i < argc)                  else if (i < argc)
238              sVal = argv[i + 1];                          sVal = argv[i + 1];
239    
240          if (sArg == "-s" || sArg == "--start") {                  if (sArg == "-s" || sArg == "--start") {
241              bServerStart = true;                          bServerStart = true;
242          }                  }
243          else if (sArg == "-h" || sArg == "--hostname") {                  else if (sArg == "-h" || sArg == "--hostname") {
244              if (sVal.isNull()) {                          if (sVal.isNull()) {
245                  out << QObject::tr("Option -h requires an argument (hostname).") + sEol;                                  out << QObject::tr("Option -h requires an argument (hostname).") + sEol;
246                  return false;                                  return false;
247              }                          }
248              sServerHost = sVal;                          sServerHost = sVal;
249              if (iEqual < 0)                          if (iEqual < 0)
250                  i++;                                  i++;
251          }                  }
252          else if (sArg == "-p" || sArg == "--port") {                  else if (sArg == "-p" || sArg == "--port") {
253              if (sVal.isNull()) {                          if (sVal.isNull()) {
254                  out << QObject::tr("Option -p requires an argument (port).") + sEol;                                  out << QObject::tr("Option -p requires an argument (port).") + sEol;
255                  return false;                                  return false;
256              }                          }
257              iServerPort = sVal.toInt();                          iServerPort = sVal.toInt();
258              if (iEqual < 0)                          if (iEqual < 0)
259                  i++;                                  i++;
260          }                  }
261          else if (sArg == "-?" || sArg == "--help") {                  else if (sArg == "-?" || sArg == "--help") {
262              print_usage(argv[0]);                          print_usage(argv[0]);
263              return false;                          return false;
264          }                  }
265          else if (sArg == "-v" || sArg == "--version") {                  else if (sArg == "-v" || sArg == "--version") {
266                          out << QObject::tr("Qt: %1\n").arg(qVersion());                          out << QObject::tr("Qt: %1\n").arg(qVersion());
267  #ifdef CONFIG_LIBGIG  #ifdef CONFIG_LIBGIG
268                          out << QString("%1: %2\n")                          out << QString("%1: %2\n")
# Line 273  bool qsamplerOptions::parse_args ( int a Line 273  bool qsamplerOptions::parse_args ( int a
273                                  .arg(::lscp_client_package())                                  .arg(::lscp_client_package())
274                                  .arg(::lscp_client_version());                                  .arg(::lscp_client_version());
275                          out << QObject::tr(QSAMPLER_TITLE ": %1\n").arg(QSAMPLER_VERSION);                          out << QObject::tr(QSAMPLER_TITLE ": %1\n").arg(QSAMPLER_VERSION);
276              return false;                          return false;
277          }                  }
278          else {                  else {
279              // If we don't have one by now,                          // If we don't have one by now,
280              // this will be the startup sesion file...                          // this will be the startup sesion file...
281              sSessionFile += sArg;                          sSessionFile += sArg;
282              iCmdArgs++;                          iCmdArgs++;
283          }                  }
284      }          }
285    
286      // Alright with argument parsing.          // Alright with argument parsing.
287      return true;          return true;
288  }  }
289    
290    

Legend:
Removed from v.1504  
changed lines
  Added in v.1509

  ViewVC Help
Powered by ViewVC