50 lines
1.0 KiB
C++
50 lines
1.0 KiB
C++
#ifndef NULLSOFT_DRIVE_COMBOBOX_HEADER
|
|
#define NULLSOFT_DRIVE_COMBOBOX_HEADER
|
|
|
|
#include "windows.h"
|
|
|
|
class DriveListBox
|
|
{
|
|
public:
|
|
DriveListBox(int controlId);
|
|
~DriveListBox(void);
|
|
|
|
public:
|
|
void SetColors(COLORREF clrNormalBG, COLORREF clrSelected1, COLORREF clrSelected2, COLORREF clrTextSel, COLORREF clrTextNorm);
|
|
void SetImages(HINSTANCE hInstance, int bgndResId, int driveResId);
|
|
void Init(HWND hwnd);
|
|
int HandleMsgProc(UINT uMsg, WPARAM wParam, LPARAM lParam);
|
|
void ReloadImages(void);
|
|
HWND GetHWND(void);
|
|
|
|
private:
|
|
void DestroyImages(void);
|
|
void CreateBitmaps(HBITMAP bmpBck, HBITMAP bmpDrive);
|
|
|
|
void DrawItem(LPDRAWITEMSTRUCT di);
|
|
int MeasureItem(LPMEASUREITEMSTRUCT mi);
|
|
|
|
private:
|
|
|
|
HWND m_hwnd, m_parentHwnd;
|
|
|
|
HINSTANCE hInstance;
|
|
|
|
HBITMAP bmpNormal;
|
|
HBITMAP bmpSelected;
|
|
|
|
int driveResId;
|
|
int bgndResId;
|
|
|
|
RECT rcItem;
|
|
|
|
int controlId;
|
|
|
|
COLORREF clrNormalBG;
|
|
COLORREF clrSelected1;
|
|
COLORREF clrSelected2;
|
|
COLORREF clrTextSel;
|
|
COLORREF clrTextNorm;
|
|
};
|
|
|
|
#endif // NULLSOFT_DRIVE_COMBOBOX_HEADER
|