Полезна ли вам эта тема?
Полагаю, это не совсем то, что вы ищете, но, возможно, вы сможете доработать её, чтобы решить вашу задачу?