tscanvas - an extension of the canvas widgetVERSION
1.0SYNOPSIS
tscanvas pathName ?options?INTRODUCTION
tscanvas (Tiled-Scrolling-canvas) is an extension of the canvas widget. A Tiled-Scrolling-canvas is simply a canvas with an image item acting as background. Horizontal and vertical scrollbars are provided by default.STANDARD OPTIONS
all "canvas" options are supported.TSCANVAS-SPECIFIC OPTIONS
-bgimage _image_
Specifies an image to display as background, which must have been created
with the "image create" command.
If _image_ is the empty string, the background is disabled
-bgzoom _n_
_n_ is an integer value (default 1). With this option, each pixel in the
source image will be expanded into a block of n x n pixels.
-bgmargin _n_
_n_ is an integer value ( _n_ >= 0 ; default is 0).
the background image will cover all the canvas visible surface,
leaving a margin of _n_ pixels.
-hscrollside _side_
Specifies where to place the horizontal scrollbar.
_side_ can be: "top","bottom","none" .
Default is "bottom".
-vscrollside _side_
Specifies where to place the vertical scrollbar.
_side_ can be: "left","right","none" .
Default is "right".WIDGET COMMANDS.. all "canvas" widget commands are supported.EXTENDED COMMANDS
pathName clean
delete all items on canvas (leaving the background-image intact)
pathName frame cget _option_
queries the "container" frame (i.e. the frame containing the 'primitive'
canvas and the two scrollbars) and returns the configuration option
given by _option_.
Option may have any of the values accepted by the frame command.
pathName frame configure ?_option_ ?_value_ _option_ _value_ ...?
queries or modifies the "container" frame (i.e. the frame containing
the 'primitive' canvas and the two scrollbars).
_option_ and _value_ may have any of the values accepted by the frame
command.Read more:
Download:
- tscanvas1.0.zip [3] This url throws a "Forbidden" error
Question - have you considered submitting these megawidgets to tklib?
PWQ 20 Feb 04, Don't mean to be picky, but since this widget masquerades as a canvas widget, shouldn't it do the tag conversions to prevent matching the background, rather than the programmer?I have looked at the code, and now I will be picky. The background image is placed over the entire scrollregion of the canvas. In some applications this is could be enormous. A more efficient approach is to make the background one tile bigger than the visible size and move it with the canvas scrolling.In case you thinking this doesn't actually matter, Netscape 4 when rendering a page creates a bitmap for the entire page, even though only a fraction of the page is visible. On very simple but long pages you can run out of memory and segfault trying to view them.What happens if I have a canvas that has a scroll region of {-100000 -100000 100000 100000} and pans automatically to the place of interest under program (rather than scrollbar) control? (Example a map viewer.)
ABU 26-jan-2005 (.. sorry to be late ..)Within the Paved Widgets package you can find a new widget Paved::canvas able to manage such huge scrollregions as you suggested.

