GUI: add a sample preview rate hint
This commit is contained in:
parent
73a9eb5ccc
commit
3e997ae886
5 changed files with 82 additions and 23 deletions
|
|
@ -2131,6 +2131,7 @@ void DivEngine::previewSample(int sample, int note, int pStart, int pEnd) {
|
|||
if (rate<100) rate=100;
|
||||
blip_set_rates(samp_bb,rate,got.rate);
|
||||
samp_prevSample=0;
|
||||
sPreview.rate=rate;
|
||||
sPreview.pos=(sPreview.pBegin>=0)?sPreview.pBegin:0;
|
||||
sPreview.sample=sample;
|
||||
sPreview.wave=-1;
|
||||
|
|
@ -2164,6 +2165,7 @@ void DivEngine::previewWave(int wave, int note) {
|
|||
if (rate<100) rate=100;
|
||||
blip_set_rates(samp_bb,rate,got.rate);
|
||||
samp_prevSample=0;
|
||||
sPreview.rate=rate;
|
||||
sPreview.pos=0;
|
||||
sPreview.sample=-1;
|
||||
sPreview.wave=wave;
|
||||
|
|
@ -2179,6 +2181,18 @@ void DivEngine::stopWavePreview() {
|
|||
BUSY_END;
|
||||
}
|
||||
|
||||
bool DivEngine::isPreviewingSample() {
|
||||
return (sPreview.sample>=0 && sPreview.sample<(int)song.sample.size());
|
||||
}
|
||||
|
||||
int DivEngine::getSamplePreviewPos() {
|
||||
return sPreview.pos;
|
||||
}
|
||||
|
||||
double DivEngine::getSamplePreviewRate() {
|
||||
return sPreview.rate;
|
||||
}
|
||||
|
||||
String DivEngine::getConfigPath() {
|
||||
return configPath;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -387,12 +387,14 @@ class DivEngine {
|
|||
DivSystem sysFileMapDMF[256];
|
||||
|
||||
struct SamplePreview {
|
||||
double rate;
|
||||
int sample;
|
||||
int wave;
|
||||
int pos;
|
||||
int pBegin, pEnd;
|
||||
bool dir;
|
||||
SamplePreview():
|
||||
rate(0.0),
|
||||
sample(-1),
|
||||
wave(-1),
|
||||
pos(0),
|
||||
|
|
@ -601,6 +603,11 @@ class DivEngine {
|
|||
// reset playback state
|
||||
void syncReset();
|
||||
|
||||
// sample preview query
|
||||
bool isPreviewingSample();
|
||||
int getSamplePreviewPos();
|
||||
double getSamplePreviewRate();
|
||||
|
||||
// trigger sample preview
|
||||
void previewSample(int sample, int note=-1, int pStart=-1, int pEnd=-1);
|
||||
void stopSamplePreview();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue