126 lines
3.2 KiB
C++
126 lines
3.2 KiB
C++
//---------------------------------------------------------------------------
|
|
|
|
#include <vcl.h>
|
|
#pragma hdrstop
|
|
|
|
#include "AudioEffectFormUnit.h"
|
|
#include "GlobalUnit.h"
|
|
|
|
//---------------------------------------------------------------------------
|
|
#pragma package(smart_init)
|
|
#pragma link "PNGButton"
|
|
#pragma resource "*.dfm"
|
|
TAudioEffectForm *AudioEffectForm;
|
|
|
|
//---------------------------------------------------------------------------
|
|
__fastcall TAudioEffectForm::TAudioEffectForm(TComponent* Owner, bool bSong)
|
|
: TForm(Owner)
|
|
{
|
|
m_bSong = bSong;
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::WMNCHitTest(TWMNCHitTest &Msg)
|
|
{
|
|
TForm::Dispatch(&Msg);
|
|
|
|
if( Msg.Result==HTCLIENT && Msg.YPos<Top+24 && Msg.XPos<Left+390)
|
|
Msg.Result = HTCAPTION;
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::FormCreate(TObject *Sender)
|
|
{
|
|
SetTransparent( this );
|
|
|
|
Font->Color = RGB(60,43,23);
|
|
|
|
//»æÖÆÔ²½Ç´°Ìå
|
|
HRGN hRgn = CreateRoundRectRgn( 0, 0, Width+1, Height+1, 16, 16 );
|
|
SetWindowRgn( Handle, hRgn, false );
|
|
DeleteObject( hRgn );
|
|
|
|
m_aCombos[0] = m_cbBox0;
|
|
m_aCombos[1] = NULL;
|
|
m_aCombos[2] = NULL;
|
|
m_aCombos[3] = m_cbBox3;
|
|
m_aCombos[4] = m_cbBox4;
|
|
m_aCombos[5] = m_cbBox5;
|
|
m_aCombos[6] = m_cbBox6;
|
|
m_aCombos[7] = m_cbBox7;
|
|
m_aCombos[8] = m_cbBox8;
|
|
m_aCombos[9] = m_cbBox9;
|
|
m_aCombos[10] = m_cbBox10;
|
|
}
|
|
|
|
void __fastcall TAudioEffectForm::FormActivate(TObject *Sender)
|
|
{
|
|
for( int i=0; i<MAX_FX_NUM; i++ ){
|
|
if( m_aCombos[i] )
|
|
m_aCombos[i]->ItemIndex = g_aAudioEffects[i];
|
|
}
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::ComboChange(TObject *Sender)
|
|
{
|
|
TComboBox* pCombo = (TComboBox*)Sender;
|
|
|
|
f_MM_SetFxPreset( pCombo->Tag, pCombo->ItemIndex );
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::PreviewClick(TObject *Sender)
|
|
{
|
|
if( Sender==m_btnPreview0 ){
|
|
m_btnPreview0->Hide();
|
|
m_btnPreview1->Show();
|
|
f_MM_Play( Handle, 0, TYPE_AUDIO|TYPE_LOOPPLAY );
|
|
}
|
|
else{
|
|
m_btnPreview0->Show();
|
|
m_btnPreview1->Hide();
|
|
f_MM_Stop();
|
|
}
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::OkClick(TObject *Sender)
|
|
{
|
|
f_MM_Stop();
|
|
|
|
bool bChanged = false;
|
|
for( int i=0; i<MAX_FX_NUM; i++ ){
|
|
if( m_aCombos[i] && g_aAudioEffects[i]!=m_aCombos[i]->ItemIndex ){
|
|
g_aAudioEffects[i] = m_aCombos[i]->ItemIndex;
|
|
bChanged = true;
|
|
}
|
|
}
|
|
|
|
if( bChanged )
|
|
g_strMP3File = "";
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::CancelClick(TObject *Sender)
|
|
{
|
|
f_MM_Stop();
|
|
|
|
for( int i=0; i<MAX_FX_NUM; i++ ){
|
|
f_MM_SetFxPreset( g_aAudioEffectTypes[i], g_aAudioEffects[i] );
|
|
}
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|
|
void __fastcall TAudioEffectForm::ClearAllClick(TObject *Sender)
|
|
{
|
|
for( int i=0; i<MAX_FX_NUM; i++ ){
|
|
if( m_aCombos[i] ){
|
|
m_aCombos[i]->ItemIndex = 0;
|
|
f_MM_SetFxPreset( g_aAudioEffectTypes[i], 0 );
|
|
}
|
|
}
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
|