87 lines
2.7 KiB
C++
87 lines
2.7 KiB
C++
//---------------------------------------------------------------------------
|
|
|
|
#ifndef PredefineProjectFormUnitH
|
|
#define PredefineProjectFormUnitH
|
|
//---------------------------------------------------------------------------
|
|
#include <System.Classes.hpp>
|
|
#include <Vcl.Controls.hpp>
|
|
#include <Vcl.StdCtrls.hpp>
|
|
#include <Vcl.Forms.hpp>
|
|
#include <Vcl.Samples.Spin.hpp>
|
|
#include <Vcl.ExtCtrls.hpp>
|
|
#include <Vcl.Imaging.jpeg.hpp>
|
|
#include "PNGButton.hpp"
|
|
#include "GlobalUnit.h"
|
|
#include "PredefineProjectSetUnit.h"
|
|
//---------------------------------------------------------------------------
|
|
class TPredefineProjectForm : public TForm
|
|
{
|
|
__published: // IDE-managed Components
|
|
TComboBox *mKeyComboBox;
|
|
TComboBox *mKeyTypeComboBox;
|
|
TComboBox *mTempoComboBox;
|
|
TComboBox *mStageComboBox;
|
|
TComboBox *mStageSetComboBox;
|
|
TComboBox *mTSComboBox;
|
|
TSpinEdit *mTempoSpinEdit;
|
|
TPaintBox *mChordsBox;
|
|
TImage *mBackGround;
|
|
TPNGButton *mOkButton;
|
|
TPNGButton *mCancelButton;
|
|
TPNGButton *mCloseBtn;
|
|
void __fastcall DoFormCreate(TObject *Sender);
|
|
void __fastcall DoChordPaint(TObject *Sender);
|
|
void __fastcall DoPaintBoxMouseLeave(TObject *Sender);
|
|
void __fastcall DoPaintBoxMouseEnter(TObject *Sender);
|
|
void __fastcall DoStageCountChange(TObject *Sender);
|
|
void __fastcall DoStageSetChange(TObject *Sender);
|
|
void __fastcall DoKeyChange(TObject *Sender);
|
|
void __fastcall DoKeyTypeChange(TObject *Sender);
|
|
void __fastcall DoTsChange(TObject *Sender);
|
|
void __fastcall DoPaintBoxMouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift,
|
|
int X, int Y);
|
|
void __fastcall OnTempoEditChange(TObject *Sender);
|
|
void __fastcall DoTempoComboChange(TObject *Sender);
|
|
void __fastcall DoFormActivate(TObject *Sender);
|
|
private: // User declarations
|
|
TRect mChordRect[8];
|
|
|
|
TPrefineProjectSet *mPreChordSet;
|
|
|
|
bool mPaintBoxFlag;
|
|
bool mPresetMouseOver;
|
|
bool mIsPreSetShow;
|
|
|
|
int mLordSong; // Ö÷¸è
|
|
int mRefrain; // ¸±¸è
|
|
int mBridge; // ÇÅ
|
|
|
|
void DrawChord(TCanvas *Canvas, TRect Rect, int iKey, int iType);
|
|
|
|
void __fastcall DoPresetChordShow(TObject *Sender);
|
|
void __fastcall DoPresetChordHide(TObject *Sender);
|
|
|
|
void __fastcall WMNCHitTest(TWMNCHitTest &Message);
|
|
|
|
BEGIN_MESSAGE_MAP
|
|
MESSAGE_HANDLER(WM_NCHITTEST, TWMNCHitTest, WMNCHitTest)
|
|
END_MESSAGE_MAP(TForm)
|
|
public: // User declarations
|
|
int m_Ts;
|
|
int m_Tempo;
|
|
int m_Key;
|
|
int m_KeyType;
|
|
int m_RavStage;
|
|
int m_Preset[3];
|
|
|
|
__fastcall TPredefineProjectForm(TComponent* Owner);
|
|
__fastcall ~TPredefineProjectForm();
|
|
|
|
virtual int __fastcall ShowModal();
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
extern PACKAGE TPredefineProjectForm *PredefineProjectForm;
|
|
extern const BYTE u_arrPredefChords[3][2][8][8];
|
|
//---------------------------------------------------------------------------
|
|
#endif
|