58 lines
1.3 KiB
C++
58 lines
1.3 KiB
C++
/*
|
|
* PatternGotoDialog.h
|
|
* -------------------
|
|
* Purpose: Implementation of pattern "go to" dialog.
|
|
* 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"
|
|
|
|
OPENMPT_NAMESPACE_BEGIN
|
|
|
|
class CSoundFile;
|
|
|
|
// CPatternGotoDialog dialog
|
|
|
|
class CPatternGotoDialog : public CDialog
|
|
{
|
|
CSoundFile &m_SndFile;
|
|
CSpinButtonCtrl m_SpinRow, m_SpinChannel, m_SpinPattern, m_SpinOrder;
|
|
|
|
public:
|
|
ROWINDEX m_nRow;
|
|
CHANNELINDEX m_nChannel;
|
|
PATTERNINDEX m_nPattern;
|
|
ORDERINDEX m_nOrder, m_nActiveOrder;
|
|
|
|
public:
|
|
CPatternGotoDialog(CWnd *pParent, ROWINDEX row, CHANNELINDEX chan, PATTERNINDEX pat, ORDERINDEX ord, CSoundFile &sndFile);
|
|
BOOL OnInitDialog() override;
|
|
|
|
protected:
|
|
bool m_controlLock = true;
|
|
|
|
inline bool ControlsLocked() const { return m_controlLock; }
|
|
inline void LockControls() { m_controlLock = true; }
|
|
inline void UnlockControls() { m_controlLock = false; }
|
|
|
|
void UpdateNumRows();
|
|
void UpdateTime();
|
|
|
|
void DoDataExchange(CDataExchange* pDX) override;
|
|
void OnOK() override;
|
|
|
|
afx_msg void OnPatternChanged();
|
|
afx_msg void OnOrderChanged();
|
|
afx_msg void OnRowChanged();
|
|
afx_msg void OnTimeChanged();
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
};
|
|
|
|
OPENMPT_NAMESPACE_END
|