fButtonDown
int8 fButtonDown;
if (fButtonDown == NOARROW) {
base, text, flags | (fPrivateData->fButtonDown == ARROW1
fPrivateData->fButtonDown == ARROW1);
base, text, flags | (fPrivateData->fButtonDown == ARROW2
fPrivateData->fButtonDown == ARROW2);
base, text, flags | (fPrivateData->fButtonDown == ARROW3
fPrivateData->fButtonDown == ARROW3);
base, text, flags | (fPrivateData->fButtonDown == ARROW4
fPrivateData->fButtonDown == ARROW4);
base, text, flags | (fPrivateData->fButtonDown == ARROW1
fPrivateData->fButtonDown == ARROW1);
updateRect, base, text, flags | (fPrivateData->fButtonDown == ARROW2
fPrivateData->fButtonDown == ARROW2);
updateRect, base, text, flags | (fPrivateData->fButtonDown == ARROW3
fPrivateData->fButtonDown == ARROW3);
base, text, flags | (fPrivateData->fButtonDown == ARROW4
fPrivateData->fButtonDown == ARROW4);
fPrivateData->fButtonDown = THUMB;
fPrivateData->fButtonDown = THUMB;
fPrivateData->fButtonDown = _ButtonFor(where);
switch (fPrivateData->fButtonDown) {
Invalidate(_ButtonRectFor(fPrivateData->fButtonDown));
if (fPrivateData->fButtonDown != NOARROW) {
if (fPrivateData->fButtonDown == THUMB) {
bool repeat = _ButtonRectFor(fPrivateData->fButtonDown).Contains(
Invalidate(_ButtonRectFor(fPrivateData->fButtonDown));
if (fPrivateData->fButtonDown == THUMB)
Invalidate(_ButtonRectFor(fPrivateData->fButtonDown));
fPrivateData->fButtonDown = NOARROW;