Yeah. Basicaly I need the internal movement. I just want to create a layer in the same canvas with rectangular shape which contains much more than the rectangle and then move the contents in the second layer. 1st the contents itself that has been masked and second- the whole layer - which consists of this rectangle masking. I agree about Zinc, I've seen the zooming glass. The idea is the following, I am trying to make a single canvas in which I want to have sort of a background pattern and then a second (may be canvas) layer that has image items which must be scrolled in pages (like a list). I don't think this can be acheived trough the ordinary canvas (Tk::Canvas) using only one canvas widget, that's why I am thinking that the best is to create a second widget and use ->place geometry manager to possition it relatively from the 0,0 of the background canvas... The problem that comes with this is that there is no way to make the background of the second canvas transparent so the user can see trought the top widget wherever there is no content - the bottom widget. I am not showing this in the flash sample... Anyway... Thanks a lot for the reply. I've been just wandering whether something like canvas in canvas can be acheived using the standard Tk canvas. :) Thanks again!!!