57 lines
1.2 KiB
C++
57 lines
1.2 KiB
C++
/*
|
|
* PSRatioCalc.h
|
|
* -------------
|
|
* Purpose: Dialog for calculating sample pitch shift ratios in the sample editor.
|
|
* Notes : (currently none)
|
|
* Authors: OpenMPT Devs
|
|
* The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
|
|
*/
|
|
|
|
|
|
#pragma once
|
|
|
|
#include "openmpt/all/BuildSettings.hpp"
|
|
|
|
#include "CDecimalSupport.h"
|
|
|
|
OPENMPT_NAMESPACE_BEGIN
|
|
|
|
class CPSRatioCalc : public CDialog
|
|
{
|
|
DECLARE_DYNAMIC(CPSRatioCalc)
|
|
|
|
public:
|
|
CPSRatioCalc(const CSoundFile &sndFile, SAMPLEINDEX sample, double ratio, CWnd* pParent = NULL); // standard constructor
|
|
double m_dRatio;
|
|
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
|
|
virtual BOOL OnInitDialog();
|
|
|
|
CNumberEdit m_EditTempo;
|
|
const CSoundFile &sndFile;
|
|
SAMPLEINDEX sampleIndex;
|
|
|
|
ULONGLONG m_lSamplesNew;
|
|
ULONGLONG m_lMsNew, m_lMsOrig;
|
|
double m_dRowsOrig, m_dRowsNew;
|
|
uint32 m_nSpeed;
|
|
TEMPO m_nTempo;
|
|
|
|
afx_msg void OnEnChangeSamples();
|
|
afx_msg void OnEnChangeMs();
|
|
afx_msg void OnEnChangeSpeed();
|
|
afx_msg void OnEnChangeRows();
|
|
afx_msg void OnEnChangeratio();
|
|
|
|
void CalcSamples();
|
|
void CalcMs();
|
|
void CalcRows();
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
public:
|
|
afx_msg void OnBnClickedOk();
|
|
};
|
|
|
|
OPENMPT_NAMESPACE_END
|