use integer ID as window handle instead of pointer