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

68 lines
1.8 KiB
C++

#ifndef _GUITAR_RANGEDLG_HPP_
#define _GUITAR_RANGEDLG_HPP_
#ifndef _COMMON_DWINDOW_HPP_
#include <common/dwindow.hpp>
#endif
#ifndef _COMMON_SMARTPOINTER_HPP_
#include <common/pointer.hpp>
#endif
#ifndef _COMMON_CALLBACK_HPP_
#include <common/callback.hpp>
#endif
#ifndef _COMMON_OWNERDRAWLISTALTCOLOR_HPP_
#include <common/odlstalt.hpp>
#endif
#ifndef _GUITAR_RANGE_HPP_
#include <guitar/range.hpp>
#endif
class TabEntry;
class RangeDialog : public DWindow
{
public:
RangeDialog(void);
virtual ~RangeDialog();
bool perform(GUIWindow &parentWindow,const TabRanges &ranges,int maxRange,bool isSelect=false);
const TabRanges &getTabRanges(void)const;
int getSelection(void)const;
private:
RangeDialog(const RangeDialog &someRangeDialog);
RangeDialog &operator=(const RangeDialog &someRangeDialog);
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 setRangeList(void);
void handleRangeSelection(void);
void handleRangeEditSelection(void);
void handleRangeInsert(void);
void handleRangeDelete(void);
Callback<RangeDialog> mInitHandler;
Callback<RangeDialog> mCreateHandler;
Callback<RangeDialog> mCloseHandler;
Callback<RangeDialog> mDestroyHandler;
Callback<RangeDialog> mCommandHandler;
SmartPointer<OwnerDrawListAltColor> mRangeList;
Point mDisplayPoint;
TabRanges mTabRanges;
bool mIsSelection;
int mMaxRange;
int mSelection;
};
inline
const TabRanges &RangeDialog::getTabRanges(void)const
{
return mTabRanges;
}
inline
int RangeDialog::getSelection(void)const
{
return mSelection;
}
#endif