void Palette::processCursor(SpaceCursor* c, int downdragup) { Region* r = RegionForSid(c->sid); c->region = r; if ( r ) { if ( r->isButton() ) { switch (downdragup) { case CURSOR_DOWN: r->buttonDown(); break; case CURSOR_UP: r->buttonUp(); break; } } else { switch (downdragup) { case CURSOR_DOWN: r->cursorDown(c); break; case CURSOR_DRAG: r->cursorDrag(c); break; case CURSOR_UP: r->cursorUp(c); break; } } } else { NosuchErrorOutput("Palette::processCursor Unable to find region (A) for sid=%d/%s",c->sid,c->source.c_str()); } }