Mercurial > hg > svgui
diff layer/Layer.h @ 137:10a82b2bbb8b
* experiment with finer zoom level changes when using h thumbwheel
author | Chris Cannam |
---|---|
date | Tue, 22 Aug 2006 14:18:28 +0000 |
parents | 9e6b3e239b9d |
children | 29f01de27db4 |
line wrap: on
line diff
--- a/layer/Layer.h Mon Aug 21 16:26:35 2006 +0000 +++ b/layer/Layer.h Tue Aug 22 14:18:28 2006 +0000 @@ -55,7 +55,23 @@ return const_cast<Model *>(const_cast<const Layer *>(this)->getModel()); } + /** + * Return a zoom constraint object defining the supported zoom + * levels for this layer. If this returns zero, the layer will + * support any integer zoom level. + */ virtual const ZoomConstraint *getZoomConstraint() const { return 0; } + + /** + * Return true if this layer can handle zoom levels other than + * those supported by its zoom constraint (presumably less + * efficiently or accurately than the officially supported zoom + * levels). If true, the layer will unenthusistically accept any + * integer zoom level from 1 to the maximum returned by its zoom + * constraint. + */ + virtual bool supportsOtherZoomLevels() const { return true; } + virtual void paint(View *, QPainter &, QRect) const = 0; enum VerticalPosition {