Mercurial > hg > tony
comparison src/Analyser.cpp @ 132:2abff42be385
Remember state of visibility & audibility between runs
author | Chris Cannam |
---|---|
date | Thu, 09 Jan 2014 17:20:15 +0000 |
parents | eae80729b665 |
children | c3b53a10c920 |
comparison
equal
deleted
inserted
replaced
131:eae80729b665 | 132:2abff42be385 |
---|---|
144 PlayParameters *params = flexiNoteLayer->getPlayParameters(); | 144 PlayParameters *params = flexiNoteLayer->getPlayParameters(); |
145 if (params) params->setPlayPan(0); | 145 if (params) params->setPlayPan(0); |
146 } | 146 } |
147 } | 147 } |
148 | 148 |
149 loadState(Audio); | |
150 loadState(PitchTrack); | |
151 loadState(Notes); | |
152 | |
149 emit layersChanged(); | 153 emit layersChanged(); |
154 } | |
155 | |
156 void | |
157 Analyser::saveState(Component c) const | |
158 { | |
159 bool v = isVisible(c); | |
160 bool a = isAudible(c); | |
161 QSettings settings; | |
162 settings.beginGroup("Analyser"); | |
163 settings.setValue(QString("Visibility %1").arg(int(c)), v); | |
164 settings.setValue(QString("Audibility %1").arg(int(c)), a); | |
165 settings.endGroup(); | |
166 } | |
167 | |
168 void | |
169 Analyser::loadState(Component c) | |
170 { | |
171 QSettings settings; | |
172 settings.beginGroup("Analyser"); | |
173 bool v = settings.value(QString("Visibility %1").arg(int(c)), true).toBool(); | |
174 bool a = settings.value(QString("Audibility %1").arg(int(c)), true).toBool(); | |
175 settings.endGroup(); | |
176 setVisible(c, v); | |
177 setAudible(c, a); | |
150 } | 178 } |
151 | 179 |
152 void | 180 void |
153 Analyser::setIntelligentActions(bool on) | 181 Analyser::setIntelligentActions(bool on) |
154 { | 182 { |
175 Analyser::setVisible(Component c, bool v) | 203 Analyser::setVisible(Component c, bool v) |
176 { | 204 { |
177 if (m_layers[c]) { | 205 if (m_layers[c]) { |
178 m_layers[c]->setLayerDormant(m_pane, !v); | 206 m_layers[c]->setLayerDormant(m_pane, !v); |
179 m_pane->layerParametersChanged(); | 207 m_pane->layerParametersChanged(); |
208 saveState(c); | |
180 } | 209 } |
181 } | 210 } |
182 | 211 |
183 bool | 212 bool |
184 Analyser::isAudible(Component c) const | 213 Analyser::isAudible(Component c) const |
185 { | 214 { |
186 if (m_layers[c]) { | 215 if (m_layers[c]) { |
187 | |
188 PlayParameters *params = m_layers[c]->getPlayParameters(); | 216 PlayParameters *params = m_layers[c]->getPlayParameters(); |
189 if (!params) return false; | 217 if (!params) return false; |
190 | |
191 return params->isPlayAudible(); | 218 return params->isPlayAudible(); |
192 } else { | 219 } else { |
193 return false; | 220 return false; |
194 } | 221 } |
195 } | 222 } |
196 | 223 |
197 void | 224 void |
198 Analyser::setAudible(Component c, bool a) | 225 Analyser::setAudible(Component c, bool a) |
199 { | 226 { |
200 if (m_layers[c]) { | 227 if (m_layers[c]) { |
201 | |
202 PlayParameters *params = m_layers[c]->getPlayParameters(); | 228 PlayParameters *params = m_layers[c]->getPlayParameters(); |
203 if (!params) return; | 229 if (!params) return; |
204 | |
205 params->setPlayAudible(a); | 230 params->setPlayAudible(a); |
206 } | 231 saveState(c); |
207 } | 232 } |
208 | 233 } |
234 |