#ifndef _GUITAR_CHORDDLG_HPP_ #define _GUITAR_CHORDDLG_HPP_ #ifndef _COMMON_DWINDOW_HPP_ #include #endif #ifndef _COMMON_SMARTPOINTER_HPP_ #include #endif #ifndef _COMMON_GLOBALDATA_HPP_ #include #endif #ifndef _COMMON_OWNERDRAWLISTALTCOLOR_HPP_ #include #endif #ifndef _GUITAR_SEQUENCER_HPP_ #include #endif #ifndef _GUITAR_FRETBOARD_HPP_ #include #endif class TabEntry; class ChordDialog : public DWindow { public: ChordDialog(void); virtual ~ChordDialog(); bool perform(GUIWindow &parentWindow,CallbackPointer &callbackPointer); private: enum{ResBegin=STRING_22000,ResEnd=STRING_CHORD_END-1}; ChordDialog(const ChordDialog &someChordDialog); ChordDialog &operator=(const ChordDialog &someChordDialog); CallbackData::ReturnType initHandler(CallbackData &someCallbackData); CallbackData::ReturnType createHandler(CallbackData &someCallbackData); CallbackData::ReturnType closeHandler(CallbackData &someCallbackData); CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData); CallbackData::ReturnType commandHandler(CallbackData &someCallbackData); void setChordList(void); void handleChordSelection(void); void makeTabEntry(String strLine,TabEntry &entry); Callback mInitHandler; Callback mCreateHandler; Callback mCloseHandler; Callback mDestroyHandler; Callback mCommandHandler; SmartPointer mChordList; Block mChords; Fretboard mFretboard; Point mDisplayPoint; CallbackPointer mPlayNoteHandler; }; #endif