Files
Work/m68hc11/backup/ODLSTLED.HPP
2024-08-07 09:16:27 -04:00

44 lines
1.4 KiB
C++

#ifndef _COMMON_OWNERDRAWLISTBINARYLED_HPP_
#define _COMMON_OWNERDRAWLISTBINARYLED_HPP_
#ifndef _COMMON_BRUSH_HPP_
#include <common/brush.hpp>
#endif
#ifndef _COMMON_BLOCK_HPP_
#include <common/block.hpp>
#endif
#ifndef _COMMON_OWNERDRAWLIST_HPP_
#include <common/odlist.hpp>
#endif
#ifndef _COMMON_PUREBITMAP_HPP_
#include <common/purebmp.hpp>
#endif
class OwnerDrawListBinaryLed : public OwnerDrawList
{
public:
OwnerDrawListBinaryLed(GUIWindow &parentWnd,HWND hControlWnd,UINT controlID);
OwnerDrawListBinaryLed(GUIWindow &parentWnd,const Rect &initRect,int controlID,DWORD style=LBS_NOTIFY|WS_BORDER|LBS_HASSTRINGS|WS_VSCROLL|LBS_OWNERDRAWFIXED|WS_CLIPCHILDREN|WS_CLIPSIBLINGS);
virtual ~OwnerDrawListBinaryLed();
OwnerDrawListBinaryLed &operator=(const OwnerDrawListBinaryLed &someOwnerDrawListBinaryLed);
protected:
virtual WORD handleDraw(const DrawItem &drawItem);
virtual WORD handleMeasureItem(MeasureItem &measureItem);
virtual LPARAM handleControlColor(PureDevice &pureDevice,Control &wndListBox);
virtual void drawEntire(const DrawItem &drawItem);
private:
enum {BmSel=0,BmUnSel=1};
enum {CellWidth=13,CellHeight=23};
Rect getPlacementRect(int position);
void setBitmap(BYTE value);
void setBitmap(void);
PureBitmap mBlankBitmap;
PureBitmap mOneBitmap;
PureBitmap mZeroBitmap;
PureBitmap mDashBitmap;
Font mFont;
RGBColor mRGBGray;
Brush mGrayBrush;
Brush mDisabledBrush;
};
#endif