to your first question: it's indeed possible, best solution for that is a transformation matrix which calculates view space into "panel space". i've done this once (without a matrix, though) for passing events to a rendered window control.