Files
AccompanyCube/CompletePanelUnit.h
T
2026-06-13 00:10:11 +08:00

65 lines
1.6 KiB
C++

//---------------------------------------------------------------------------
#ifndef CompletePanelUnitH
#define CompletePanelUnitH
#include "ShowBarsPanelUnit.h"
//---------------------------------------------------------------------------
namespace CompletePanelUnit
{
//---------------------------------------------------------------------------
class TPanel : public TShowBarsPanel
{
__published:
private:
int m_nChordWidth,
m_nChordHeight;
//重录起止位置图标
TPngImage *m_imgBeginPos,
*m_imgEndPos;
//显示相关
int m_nModifyFlagWidth,
m_nModifyFlagHeight;
//录音/播放相关
bool m_bShowModifyPos;
int m_iModifyBeginBar,
m_iModifyBeginPoint,
m_iModifyEndBar,
m_iModifyEndPoint;
int FirstBar( int iStage );
void InvalidateStage( int iStage, int iArea=BAR_DATA );
protected:
virtual void __fastcall CreateWnd();
virtual void __fastcall SetBarTitle( int iBar, String& strText );
virtual void __fastcall DrawBarBkgnd( int iBar, int left, int top );
virtual void __fastcall DrawBarContext( int iBar, int left, int top );
virtual void __fastcall DrawBarOperation( int iBar, int left, int top );
virtual void __fastcall BarPosChanged();
public:
__fastcall virtual TPanel(System::Classes::TComponent* AOwner);
__fastcall ~TPanel();
void InitialVars();
int ComposeBarCount(){ return m_nBarNum; };
bool SetModifyPos( bool bBegin, int iBar, int iPoint );
void GetModifyPos( bool bBegin, int& iBar, int& iPoint );
void ShowModifyPos( bool bShow=true );
int FindStage( int iBar, int *piFirstBar=NULL );
};
}
using namespace CompletePanelUnit;
#endif