Files
Work/statbar/STATLOGO.HPP
2024-08-07 09:16:27 -04:00

60 lines
1.4 KiB
C++

#ifndef _STATBAR_STATUSBARLOGO_HPP_
#define _STATBAR_STATUSBARLOGO_HPP_
#ifndef _STATBAR_STATBAR_HPP_
#include <statbar/statbar.hpp>
#endif
#ifndef _COMMON_PUREBITMAP_HPP_
#include <common/purebmp.hpp>
#endif
class StatusBarLogo : public StatusBar
{
public:
StatusBarLogo(GUIWindow &guiWindow,const String &nameBitmap,BOOL stretchBlt=TRUE);
virtual ~StatusBarLogo();
void setBitmap(GUIWindow &guiWindow,const String &nameBitmap);
void centerxy(BOOL centerx,BOOL centery);
void stretchBlt(BOOL stretchBlt);
protected:
virtual void postPaint(PureDevice &screenDevice,const Rect &paintRect);
private:
PureBitmap mPureBitmap;
BOOL mStretchBlt;
BOOL mCentery;
BOOL mCenterx;
};
inline
StatusBarLogo::StatusBarLogo(GUIWindow &guiWindow,const String &nameBitmap,BOOL stretchBlt)
: StatusBar(guiWindow), mPureBitmap(nameBitmap,guiWindow.processInstance()), mStretchBlt(stretchBlt),
mCenterx(FALSE), mCentery(FALSE)
{
}
inline
StatusBarLogo::~StatusBarLogo()
{
}
inline
void StatusBarLogo::centerxy(BOOL centerx,BOOL centery)
{
mCenterx=centerx;
mCentery=centery;
}
inline
void StatusBarLogo::stretchBlt(BOOL stretchBlt)
{
mStretchBlt=stretchBlt;
}
inline
void StatusBarLogo::setBitmap(GUIWindow &guiWindow,const String &nameBitmap)
{
mPureBitmap=PureBitmap(nameBitmap,guiWindow.processInstance());
PureDevice screenDevice(guiWindow);
postPaint(screenDevice,postPaintRect());
}
#endif