10 #include "wimp_error.h" 15 CWindow::CWindow(
const std::string& rksTitle)
28 wcbWindow.lVisibleMinimum.cX = rklSize.cX;
29 wcbWindow.lVisibleMaximum.cX = 0;
33 wcbWindow.lVisibleMaximum.cX = rklSize.cX;
34 wcbWindow.lVisibleMinimum.cX = 0;
39 wcbWindow.lVisibleMinimum.cY = rklSize.cY;
40 wcbWindow.lVisibleMaximum.cY = 0;
44 wcbWindow.lVisibleMaximum.cY = rklSize.cY;
45 wcbWindow.lVisibleMinimum.cY = 0;
48 wcbWindow.lScrollOffset.cX = 0;
49 wcbWindow.lScrollOffset.cY = 0;
51 wcbWindow.wfFlags.wfIsMoveable = 1;
52 wcbWindow.wfFlags.wfWimpRedrawn = 1;
53 wcbWindow.wfFlags.wfUsesNewBits = 1;
54 wcbWindow.wfFlags.wfHasTitlebar = 1;
55 wcbWindow.wfFlags.wfHasBackIcon = 1;
56 wcbWindow.wfFlags.wfHasCloseIcon = 1;
58 wcbWindow.bTitleForegroundColour = 7;
59 wcbWindow.bTitleBackgroundColour = 2;
60 wcbWindow.bWorkAreaForegroundColour = 7;
61 wcbWindow.bWorkAreaBackgroundColour = 1;
62 wcbWindow.bScrollbarInnerColour = 3;
63 wcbWindow.bScrollbarOuterColour = 1;
64 wcbWindow.bTitleFocusBackgroundColour = 12;
65 wcbWindow.lWorkareaMinimum = wcbWindow.lVisibleMinimum;
66 wcbWindow.lWorkareaMaximum = wcbWindow.lVisibleMaximum;
68 wcbWindow.ifTitleBarIconFlags.ifContainsText = 1;
69 wcbWindow.ifTitleBarIconFlags.ifContentsCentredHorzontally = 1;
70 wcbWindow.ifTitleBarIconFlags.ifDataIndirected = 1;
71 wcbWindow.ifTitleBarIconFlags.ifForegroundColour = 7;
72 wcbWindow.ifTitleBarIconFlags.ifBackgroundColour = 2;
74 wcbWindow.ucMinimumXSize = 1;
75 wcbWindow.ucMinimumYSize = 1;
77 wcbWindow.uWorkareaButtonType = 0;
78 wcbWindow.vpSpriteArea = (
void*)1;
80 wcbWindow.idTitleData.indirectedText.kpcaValidationString = (
const char*)-1;
81 wcbWindow.idTitleData.indirectedText.iBufferLength = 256;
83 wcbWindow.uiIconCount = 0;
128 if (kihIcon == (*it)->Handle())
144 if (piIcon->
Clicked(rkmcbClickBlock))
155 wimp_openwindow(&rkwobOpenBlock);
std::list< const CIcon * > m_lkpwIcons
void DeregisterIcon(const CIcon *kpiIcon)
void DeregisterWindow(const CWindow *kpwWindow)
void Create(const tLocation &rklSize)
virtual void SetTitle(const std::string &rksNewTitle)
virtual bool Clicked(const tMouseClickBlock &rkmcbClickBlock)
static CTask * CurrentTask()
char m_caWindowTitle[256]
void RegisterIcon(const CIcon *kpiIcon)
void RegisterWindow(const CWindow *kpwWindow)
const CIcon * FindIcon(const tIconHandle kihIcon)
virtual void Adorn(tWindowCreateBlock &rwcbBlock)
virtual bool Clicked(const tMouseClickBlock &rkmcbClickBlock)
virtual void Created(void)
virtual void Open(const tWindowOpenBlock &rkwobOpenBlock)