From ea318d1431c89e647598c510c4245c6571aa5f46 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Thu, 26 Jan 2012 23:32:43 -0600 Subject: Update to latest tqt3 automated conversion --- doc/html/qcanvas.html | 588 -------------------------------------------------- 1 file changed, 588 deletions(-) delete mode 100644 doc/html/qcanvas.html (limited to 'doc/html/qcanvas.html') diff --git a/doc/html/qcanvas.html b/doc/html/qcanvas.html deleted file mode 100644 index fbfdbd12e..000000000 --- a/doc/html/qcanvas.html +++ /dev/null @@ -1,588 +0,0 @@ - - - - - -TQCanvas Class - - - - - - - -
- -Home - | -All Classes - | -Main Classes - | -Annotated - | -Grouped Classes - | -Functions -

TQCanvas Class Reference
[canvas module]

- -

The TQCanvas class provides a 2D area that can contain TQCanvasItem objects. -More... -

#include <qcanvas.h> -

Inherits TQObject. -

List of all member functions. -

Public Members

- -

Public Slots

- -

Signals

- -

Protected Members

- -

Detailed Description

- - -The TQCanvas class provides a 2D area that can contain TQCanvasItem objects. - -

- - - - -

The TQCanvas class manages its 2D graphic area and all the canvas -items the area contains. The canvas has no visual appearance of -its own. Instead, it is displayed on screen using a TQCanvasView. -Multiple TQCanvasView widgets may be associated with a canvas to -provide multiple views of the same canvas. -

The canvas is optimized for large numbers of items, particularly -where only a small percentage of the items change at any -one time. If the entire display changes very frequently, you should -consider using your own custom TQScrollView subclass. -

TQt provides a rich -set of canvas item classes, e.g. TQCanvasEllipse, TQCanvasLine, -TQCanvasPolygon, TQCanvasPolygonalItem, TQCanvasRectangle, TQCanvasSpline, -TQCanvasSprite and TQCanvasText. You can subclass to create your own -canvas items; TQCanvasPolygonalItem is the most common base class used -for this purpose. -

Items appear on the canvas after their show() function has been called (or setVisible(TRUE)), and after -update() has been called. The canvas only shows items that are -visible, and then only if -update() is called. (By default the canvas is white and so are -canvas items, so if nothing appears try changing colors.) -

If you created the canvas without passing a width and height to -the constructor you must also call resize(). -

Although a canvas may appear to be similar to a widget with child -widgets, there are several notable differences: -

-

A canvas consists of a background, a number of canvas items organized by -x, y and z coordinates, and a foreground. A canvas item's z coordinate -can be treated as a layer number -- canvas items with a higher z -coordinate appear in front of canvas items with a lower z coordinate. -

The background is white by default, but can be set to a different color -using setBackgroundColor(), or to a repeated pixmap using -setBackgroundPixmap() or to a mosaic of smaller pixmaps using -setTiles(). Individual tiles can be set with setTile(). There -are corresponding get functions, e.g. backgroundColor() and -backgroundPixmap(). -

Note that TQCanvas does not inherit from TQWidget, even though it has some -functions which provide the same functionality as those in TQWidget. One -of these is setBackgroundPixmap(); some others are resize(), size(), -width() and height(). TQCanvasView is the widget used to display a -canvas on the screen. -

Canvas items are added to a canvas by constructing them and passing the -canvas to the canvas item's constructor. An item can be moved to a -different canvas using TQCanvasItem::setCanvas(). -

Canvas items are movable (and in the case of TQCanvasSprites, animated) -objects that inherit TQCanvasItem. Each canvas item has a position on the -canvas (x, y coordinates) and a height (z coordinate), all of which are -held as floating-point numbers. Moving canvas items also have x and y -velocities. It's possible for a canvas item to be outside the canvas -(for example TQCanvasItem::x() is greater than width()). When a canvas -item is off the canvas, onCanvas() returns FALSE and the canvas -disregards the item. (Canvas items off the canvas do not slow down any -of the common operations on the canvas.) -

Canvas items can be moved with TQCanvasItem::move(). The advance() -function moves all TQCanvasItem::animated() canvas items and -setAdvancePeriod() makes TQCanvas move them automatically on a periodic -basis. In the context of the TQCanvas classes, to `animate' a canvas item -is to set it in motion, i.e. using TQCanvasItem::setVelocity(). Animation -of a canvas item itself, i.e. items which change over time, is enabled -by calling TQCanvasSprite::setFrameAnimation(), or more generally by -subclassing and reimplementing TQCanvasItem::advance(). To detect collisions -use one of the TQCanvasItem::collisions() functions. -

The changed parts of the canvas are redrawn (if they are visible in a -canvas view) whenever update() is called. You can either call update() -manually after having changed the contents of the canvas, or force -periodic updates using setUpdatePeriod(). If you have moving objects on -the canvas, you must call advance() every time the objects should -move one step further. Periodic calls to advance() can be forced using -setAdvancePeriod(). The advance() function will call -TQCanvasItem::advance() on every item that is animated and trigger an update of the -affected areas afterwards. (A canvas item that is `animated' is simply -a canvas item that is in motion.) -

TQCanvas organizes its canvas items into chunks; these are areas on -the canvas that are used to speed up most operations. Many operations -start by eliminating most chunks (i.e. those which haven't changed) -and then process only the canvas items that are in the few interesting -(i.e. changed) chunks. A valid chunk, validChunk(), is one which is on -the canvas. -

The chunk size is a key factor to TQCanvas's speed: if there are too many -chunks, the speed benefit of grouping canvas items into chunks is -reduced. If the chunks are too large, it takes too long to process each -one. The TQCanvas constructor tries to pick a suitable size, but you -can call retune() to change it at any time. The chunkSize() function -returns the current chunk size. The canvas items always make sure -they're in the right chunks; all you need to make sure of is that -the canvas uses the right chunk size. A good rule of thumb is that -the size should be a bit smaller than the average canvas item -size. If you have moving objects, the chunk size should be a bit -smaller than the average size of the moving items. -

The foreground is normally nothing, but if you reimplement -drawForeground(), you can draw things in front of all the canvas -items. -

Areas can be set as changed with setChanged() and set unchanged with -setUnchanged(). The entire canvas can be set as changed with -setAllChanged(). A list of all the items on the canvas is returned by -allItems(). -

An area can be copied (painted) to a TQPainter with drawArea(). -

If the canvas is resized it emits the resized() signal. -

The examples/canvas application and the 2D graphics page of the -examples/demo application demonstrate many of TQCanvas's facilities. -

See also TQCanvasView, TQCanvasItem, Abstract Widget Classes, Graphics Classes, and Image Processing Classes. - -


Member Function Documentation

-

TQCanvas::TQCanvas ( TQObject * parent = 0, const char * name = 0 ) -

-Create a TQCanvas with no size. parent and name are passed to -the TQObject superclass. -

Warning: You must call resize() at some time after creation to -be able to use the canvas. - -

TQCanvas::TQCanvas ( int w, int h ) -

-Constructs a TQCanvas that is w pixels wide and h pixels high. - -

TQCanvas::TQCanvas ( TQPixmap p, int h, int v, int tilewidth, int tileheight ) -

-Constructs a TQCanvas which will be composed of h tiles -horizontally and v tiles vertically. Each tile will be an image -tilewidth by tileheight pixels taken from pixmap p. -

The pixmap p is a list of tiles, arranged left to right, (and -in the case of pixmaps that have multiple rows of tiles, top to -bottom), with tile 0 in the top-left corner, tile 1 next to the -right, and so on, e.g. -

-
0 1 2 3 -
4 5 6 7 -
-

The TQCanvas is initially sized to show exactly the given number of -tiles horizontally and vertically. If it is resized to be larger, -the entire matrix of tiles will be repeated as often as necessary -to cover the area. If it is smaller, tiles to the right and bottom -will not be visible. -

See also setTiles(). - -

TQCanvas::~TQCanvas () [virtual] -

-Destroys the canvas and all the canvas's canvas items. - -

void TQCanvas::advance () [virtual slot] -

-Moves all TQCanvasItem::animated() canvas items on the canvas and -refreshes all changes to all views of the canvas. (An `animated' -item is an item that is in motion; see setVelocity().) -

The advance takes place in two phases. In phase 0, the -TQCanvasItem::advance() function of each TQCanvasItem::animated() -canvas item is called with paramater 0. Then all these canvas -items are called again, with parameter 1. In phase 0, the canvas -items should not change position, merely examine other items on -the canvas for which special processing is required, such as -collisions between items. In phase 1, all canvas items should -change positions, ignoring any other items on the canvas. This -two-phase approach allows for considerations of "fairness", -although no TQCanvasItem subclasses supplied with TQt do anything -interesting in phase 0. -

The canvas can be configured to call this function periodically -with setAdvancePeriod(). -

See also update(). - -

TQCanvasItemList TQCanvas::allItems () -

-Returns a list of all the items in the canvas. - -

TQColor TQCanvas::backgroundColor () const -

-Returns the color set by setBackgroundColor(). By default, this is -white. -

This function is not a reimplementation of -TQWidget::backgroundColor() (TQCanvas is not a subclass of TQWidget), -but all TQCanvasViews that are viewing the canvas will set their -backgrounds to this color. -

See also setBackgroundColor() and backgroundPixmap(). - -

TQPixmap TQCanvas::backgroundPixmap () const -

-Returns the pixmap set by setBackgroundPixmap(). By default, -this is a null pixmap. -

See also setBackgroundPixmap() and backgroundColor(). - -

int TQCanvas::chunkSize () const -

- -

Returns the chunk size of the canvas. -

See also retune(). - -

TQCanvasItemList TQCanvas::collisions ( const TQPoint & p ) const -

-Returns a list of canvas items that collide with the point p. -The list is ordered by z coordinates, from highest z coordinate -(front-most item) to lowest z coordinate (rear-most item). - -

TQCanvasItemList TQCanvas::collisions ( const TQRect & r ) const -

-This is an overloaded member function, provided for convenience. It behaves essentially like the above function. -

Returns a list of items which collide with the rectangle r. The -list is ordered by z coordinates, from highest z coordinate -(front-most item) to lowest z coordinate (rear-most item). - -

TQCanvasItemList TQCanvas::collisions ( const TQPointArray & chunklist, const TQCanvasItem * item, bool exact ) const -

-This is an overloaded member function, provided for convenience. It behaves essentially like the above function. -

Returns a list of canvas items which intersect with the chunks -listed in chunklist, excluding item. If exact is TRUE, -only those which actually collide with item are returned; otherwise canvas items -are included just for being in the chunks. -

This is a utility function mainly used to implement the simpler -TQCanvasItem::collisions() function. - -

void TQCanvas::drawArea ( const TQRect & clip, TQPainter * painter, bool dbuf = FALSE ) -

-Paints all canvas items that are in the area clip to painter, using double-buffering if dbuf is TRUE. -

e.g. to print the canvas to a printer: -

-    TQPrinter pr;
-    if ( pr.setup() ) {
-        TQPainter p(&pr);
-        canvas.drawArea( canvas.rect(), &p );
-    }
-    
- - -

Example: canvas/canvas.cpp. -

void TQCanvas::drawBackground ( TQPainter & painter, const TQRect & clip ) [virtual protected] -

-This virtual function is called for all updates of the canvas. It -renders any background graphics using the painter painter, in -the area clip. If the canvas has a background pixmap or a tiled -background, that graphic is used, otherwise the canvas is cleared -using the background color. -

If the graphics for an area change, you must explicitly call -setChanged(const TQRect&) for the result to be visible when -update() is next called. -

See also setBackgroundColor(), setBackgroundPixmap(), and setTiles(). - -

void TQCanvas::drawForeground ( TQPainter & painter, const TQRect & clip ) [virtual protected] -

-This virtual function is called for all updates of the canvas. It -renders any foreground graphics using the painter painter, in -the area clip. -

If the graphics for an area change, you must explicitly call -setChanged(const TQRect&) for the result to be visible when -update() is next called. -

The default is to draw nothing. - -

int TQCanvas::height () const -

- -

Returns the height of the canvas, in pixels. - -

Example: canvas/canvas.cpp. -

bool TQCanvas::onCanvas ( int x, int y ) const -

- -

Returns TRUE if the pixel position (x, y) is on the canvas; -otherwise returns FALSE. -

See also validChunk(). - -

bool TQCanvas::onCanvas ( const TQPoint & p ) const -

- -This is an overloaded member function, provided for convenience. It behaves essentially like the above function. -

Returns TRUE if the pixel position p is on the canvas; -otherwise returns FALSE. -

See also validChunk(). - -

TQRect TQCanvas::rect () const -

- -

Returns a rectangle the size of the canvas. - -

void TQCanvas::resize ( int w, int h ) [virtual] -

-Changes the size of the canvas to have a width of w and a -height of h. This is a slow operation. - -

Examples: canvas/canvas.cpp and chart/chartform.cpp. -

void TQCanvas::resized () [signal] -

- -

This signal is emitted whenever the canvas is resized. Each -TQCanvasView connects to this signal to keep the scrollview's size -correct. - -

void TQCanvas::retune ( int chunksze, int mxclusters = 100 ) [virtual] -

-Change the efficiency tuning parameters to mxclusters clusters, -each of size chunksze. This is a slow operation if there are -many objects on the canvas. -

The canvas is divided into chunks which are rectangular areas chunksze wide by chunksze high. Use a chunk size which is about -the average size of the canvas items. If you choose a chunk size -which is too small it will increase the amount of calculation -required when drawing since each change will affect many chunks. -If you choose a chunk size which is too large the amount of -drawing required will increase because for each change, a lot of -drawing will be required since there will be many (unchanged) -canvas items which are in the same chunk as the changed canvas -items. -

Internally, a canvas uses a low-resolution "chunk matrix" to keep -track of all the items in the canvas. A 64x64 chunk matrix is the -default for a 1024x1024 pixel canvas, where each chunk collects -canvas items in a 16x16 pixel square. This default is also -affected by setTiles(). You can tune this default using this -function. For example if you have a very large canvas and want to -trade off speed for memory then you might set the chunk size to 32 -or 64. -

The mxclusters argument is the number of rectangular groups of -chunks that will be separately drawn. If the canvas has a large -number of small, dispersed items, this should be about that -number. Our testing suggests that a large number of clusters is -almost always best. -

-

void TQCanvas::setAdvancePeriod ( int ms ) [virtual] -

-Sets the canvas to call advance() every ms milliseconds. Any -previous setting by setAdvancePeriod() or setUpdatePeriod() is -overridden. -

If ms is less than 0 advancing will be stopped. - -

Example: canvas/main.cpp. -

void TQCanvas::setAllChanged () [virtual] -

-Marks the whole canvas as changed. -All views of the canvas will be entirely redrawn when -update() is called next. - -

void TQCanvas::setBackgroundColor ( const TQColor & c ) [virtual] -

-Sets the solid background to be the color c. -

See also backgroundColor(), setBackgroundPixmap(), and setTiles(). - -

void TQCanvas::setBackgroundPixmap ( const TQPixmap & p ) [virtual] -

-Sets the solid background to be the pixmap p repeated as -necessary to cover the entire canvas. -

See also backgroundPixmap(), setBackgroundColor(), and setTiles(). - -

void TQCanvas::setChanged ( const TQRect & area ) [virtual] -

-Marks area as changed. This area will be redrawn in all -views that are showing it when update() is called next. - -

void TQCanvas::setDoubleBuffering ( bool y ) [virtual] -

-If y is TRUE (the default) double-buffering is switched on; -otherwise double-buffering is switched off. -

Turning off double-buffering causes the redrawn areas to flicker a -little and also gives a (usually small) performance improvement. - -

Example: canvas/canvas.cpp. -

void TQCanvas::setTile ( int x, int y, int tilenum ) [virtual] -

-Sets the tile at (x, y) to use tile number tilenum, which -is an index into the tile pixmaps. The canvas will update -appropriately when update() is next called. -

The images are taken from the pixmap set by setTiles() and are -arranged left to right, (and in the case of pixmaps that have -multiple rows of tiles, top to bottom), with tile 0 in the -top-left corner, tile 1 next to the right, and so on, e.g. -

-
0 1 2 3 -
4 5 6 7 -
-

See also tile() and setTiles(). - -

void TQCanvas::setTiles ( TQPixmap p, int h, int v, int tilewidth, int tileheight ) [virtual] -

-Sets the TQCanvas to be composed of h tiles horizontally and v tiles vertically. Each tile will be an image tilewidth by tileheight pixels from pixmap p. -

The pixmap p is a list of tiles, arranged left to right, (and -in the case of pixmaps that have multiple rows of tiles, top to -bottom), with tile 0 in the top-left corner, tile 1 next to the -right, and so on, e.g. -

-
0 1 2 3 -
4 5 6 7 -
-

If the canvas is larger than the matrix of tiles, the entire -matrix is repeated as necessary to cover the whole canvas. If it -is smaller, tiles to the right and bottom are not visible. -

The width and height of p must be a multiple of tilewidth -and tileheight. If they are not the function will do nothing. -

If you want to unset any tiling set, then just pass in a null -pixmap and 0 for h, v, tilewidth, and -tileheight. - -

void TQCanvas::setUnchanged ( const TQRect & area ) [virtual] -

-Marks area as unchanged. The area will not be redrawn in -the views for the next update(), unless it is marked or changed -again before the next call to update(). - -

void TQCanvas::setUpdatePeriod ( int ms ) [virtual] -

-Sets the canvas to call update() every ms milliseconds. Any -previous setting by setAdvancePeriod() or setUpdatePeriod() is -overridden. -

If ms is less than 0 automatic updating will be stopped. - -

TQSize TQCanvas::size () const -

- -

Returns the size of the canvas, in pixels. - -

int TQCanvas::tile ( int x, int y ) const -

- -

Returns the tile at position (x, y). Initially, all tiles -are 0. -

The parameters must be within range, i.e. -0 < x < tilesHorizontally() and -0 < y < tilesVertically(). -

See also setTile(). - -

int TQCanvas::tileHeight () const -

- -

Returns the height of each tile. - -

int TQCanvas::tileWidth () const -

- -

Returns the width of each tile. - -

int TQCanvas::tilesHorizontally () const -

- -

Returns the number of tiles horizontally. - -

int TQCanvas::tilesVertically () const -

- -

Returns the number of tiles vertically. - -

void TQCanvas::update () [virtual slot] -

-Repaints changed areas in all views of the canvas. -

See also advance(). - -

bool TQCanvas::validChunk ( int x, int y ) const -

- -

Returns TRUE if the chunk position (x, y) is on the canvas; -otherwise returns FALSE. -

See also onCanvas(). - -

bool TQCanvas::validChunk ( const TQPoint & p ) const -

- -This is an overloaded member function, provided for convenience. It behaves essentially like the above function. -

Returns TRUE if the chunk position p is on the canvas; otherwise -returns FALSE. -

See also onCanvas(). - -

int TQCanvas::width () const -

- -

Returns the width of the canvas, in pixels. - -

Example: canvas/canvas.cpp. - -


-This file is part of the TQt toolkit. -Copyright © 1995-2007 -Trolltech. All Rights Reserved.


- -
Copyright © 2007 -TrolltechTrademarks -
TQt 3.3.8
-
- -- cgit v1.2.1