Files
Work/guitar/backup/20040302/ScaleDlg.hpp
2024-08-07 09:16:27 -04:00

60 lines
1.7 KiB
C++

#ifndef _GUITAR_SCALEDLG_HPP_
#define _GUITAR_SCALEDLG_HPP_
#ifndef _COMMON_DWINDOW_HPP_
#include <common/dwindow.hpp>
#endif
#ifndef _COMMON_SMARTPOINTER_HPP_
#include <common/pointer.hpp>
#endif
#ifndef _COMMON_GLOBALDATA_HPP_
#include <common/gdata.hpp>
#endif
#ifndef _COMMON_OWNERDRAWLISTALTCOLOR_HPP_
#include <common/odlstalt.hpp>
#endif
#ifndef _GUITAR_TABENTRY_HPP_
#include <guitar/TabEntry.hpp>
#endif
#ifndef _GUITAR_FRETBOARD_HPP_
#include <guitar/Fretboard.hpp>
#endif
#ifndef _GUITAR_SEQUENCER_HPP_
#include <guitar/sequencer.hpp>
#endif
class Scale;
class ScaleDialog : public DWindow
{
public:
ScaleDialog(void);
virtual ~ScaleDialog();
bool perform(GUIWindow &parentWindow,CallbackPointer &callbackPointer);
private:
ScaleDialog(const ScaleDialog &someScaleDialog);
ScaleDialog &operator=(const ScaleDialog &someScaleDialog);
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 handleOk(void);
void handleRoot(void);
void handleList(void);
bool showScale(void);
void playScale(const Scale &scale);
void playScale(const String &root,const String &scale);
Callback<ScaleDialog> mInitHandler;
Callback<ScaleDialog> mCreateHandler;
Callback<ScaleDialog> mCloseHandler;
Callback<ScaleDialog> mDestroyHandler;
Callback<ScaleDialog> mCommandHandler;
SmartPointer<OwnerDrawListAltColor> mScaleList;
SmartPointer<Sequencer> mMIDIDevice;
CallbackPointer mPlayNoteHandler;
Fretboard mFretboard;
bool mInEdit;
};
#endif