CVB.Net 14.0
NonClippingImageOverlay Class Reference

Base class for image overlays that should not be clipped (i.e. that extend beyond their definition). More...

Inherits ImageOverlay.

Inherited by Area2DOverlay, ExtentIndicator, LabelOverlay, and TrackerBox.

Public Member Functions

 NonClippingImageOverlay ()
 default ctor
 
- Public Member Functions inherited from ImageOverlay
 ImageOverlay ()
 Creates an image overlay object.
 
- Public Member Functions inherited from OverlayBase
 OverlayBase ()
 Creates an overlay object.
 

Protected Member Functions

override System.Windows.Media.Geometry GetLayoutClip (Size layoutSlotSize)
 Prevent clipping at the edge of the user control (that way we can implement dragging of the overlay more easily). More...
 
virtual double CoerceOverlayWidth (double value)
 Inheritors must override this to specify the effective overlay width (which should be total render extent regardless of clipping considerations). More...
 
virtual double CoerceOverlayHeight (double value)
 Inheritors must override this to specify the effective overlay width (which should be total render extent regardless of clipping considerations). More...
 
- Protected Member Functions inherited from OverlayBase
virtual void OnParentDisplayCanvasChanged (DisplayCanvas oldCanvas, DisplayCanvas newCanvas)
 Event raiser. More...
 

Additional Inherited Members

- Static Public Attributes inherited from ImageOverlay
static readonly DependencyProperty AutoScaleContentProperty
 Backing store for the AutoScaleContent property. More...
 
static readonly DependencyProperty CoordinatesProperty
 Dependency property object.
 
static readonly DependencyProperty NonScaledTransformProperty
 Backing store for the NonScaledTransform property. More...
 
static readonly DependencyProperty PixelCoordinateSystemProperty
 Backing store for the PixelCoordinateSystem property. More...
 
static readonly DependencyProperty ScaledTransformProperty
 Backing store for the ScaledTransform property. More...
 
static readonly DependencyProperty StandardLineWidthProperty
 Backing store.
 
static readonly DependencyProperty EffectiveLineWidthProperty = EffectiveLineWidthPropertyKey.DependencyProperty
 Backing store.
 
- Static Public Attributes inherited from OverlayBase
static readonly DependencyProperty ActualZoomFactorProperty = ActualZoomFactorKey.DependencyProperty
 Backing store for the ActualZoomFactor property.
 
static readonly DependencyProperty InverseActualZoomFactorProperty = InverseActualZoomFactorPropertyKey.DependencyProperty
 Backing store.
 
static readonly DependencyProperty OverlayHeightProperty
 Backing store for the OverlayHeight property
 
static readonly DependencyProperty OverlayWidthProperty
 Backing store for the OverlayWidth property.
 
static readonly DependencyProperty OverlayXProperty
 Backing store for the OverlayX property.
 
static readonly DependencyProperty OverlayYProperty
 Backing store for the OverlayY property.
 
static readonly DependencyProperty ParentDisplayCanvasProperty
 Backing store for the readonly ParentDisplayCanvas property.
 
static readonly DependencyProperty BottomProperty
 Backing store for the Bottom property.
 
static readonly DependencyProperty LeftProperty
 Backing store for the Left property.
 
static readonly DependencyProperty LengthUnitProperty
 Backing store for the LengthUnit property.
 
static readonly DependencyProperty RightProperty
 Backing store for the Right property.
 
static readonly DependencyProperty TopProperty
 Backing store for the Top property.
 
- Static Protected Member Functions inherited from ImageOverlay
static new void OnActualZoomFactorChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
 React to changes in the zoom factor. More...
 
static object CoerceCoordinate (DependencyObject d, object baseValue)
 Ensures correct location handling for (sub)pixel coordinate mode. More...
 
- Static Protected Member Functions inherited from OverlayBase
static void OnActualZoomFactorChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)
 React to property changes. More...
 
- Static Protected Attributes inherited from ImageOverlay
const CoordinateMode CoordinatesDefault = CoordinateMode.Pixel
 Default for the property.
 
static readonly DependencyPropertyKey EffectiveLineWidthPropertyKey
 Backing store key.
 
- Static Protected Attributes inherited from OverlayBase
static readonly DependencyPropertyKey ActualZoomFactorKey
 The Key for readonly ActualZoomFactor property.
 
static readonly DependencyPropertyKey InverseActualZoomFactorPropertyKey
 Backing store key.
 
- Properties inherited from ImageOverlay
AutoScaleContent AutoScaleContent [get, set]
 Defines whether or not the overlays in the canvas are automatically scaled according to the zoom factor.
 
CoordinateMode Coordinates [get, set]
 Coordinate system usage (pixel or sub pixel).
 
Transform NonScaledTransform [get]
 Gets the the transform that is used to undo automatic scaling of content according to the OverlayBase.ActualZoomFactor. More...
 
PixelCoordinateSystem PixelCoordinateSystem [get, set]
 Defines the location of a point in a pixel. More...
 
Transform ScaledTransform [get]
 Gets the the transform that is used to scale content according to the OverlayBase.ActualZoomFactor. More...
 
double StandardLineWidth [get, set]
 The standard line width is the width at which "normal" lines should be painted in the overlay. It is mostly a vehicle for calculating the effective line width and for binding purposes.
 
double EffectiveLineWidth [get, protected set]
 The effective line width is the line width at which to paint in order to make lines with the width defined in the property StandardLineWidth appear as if they were not zoomed.
 
- Properties inherited from OverlayBase
double ActualZoomFactor [get]
 Gets the actual zoom factor of the display canvas this overlay is on.
 
double InverseActualZoomFactor [get, protected set]
 Gets the inverse value of the actual Zoom factor (useful for painting items that are the same size regardless of zoom factor).
 
double OverlayHeight [get, set]
 Gets/sets the height of the overlay in the current length unit.
 
double OverlayWidth [get, set]
 Gets/sets the width of the overlay in the current length unit.
 
double OverlayX [get, set]
 Gets/sets the overlay x coordinate in the current length unit.
 
double OverlayY [get, set]
 Gets/set the overlay Y in the current length unit.
 
DisplayCanvas ParentDisplayCanvas [get, set]
 The DisplayCanvas this overlay is child of. More...
 
double Bottom [get, set]
 Layouts a child from the bottom. More...
 
double Left [get, set]
 Layouts a child from the left. More...
 
LengthUnit LengthUnit [get]
 Defines whether the layout properties are measured in image pixels or in device independent pixels as displayed by the canvas.
 
double Right [get, set]
 Layouts a child from the right. More...
 
double Top [get, set]
 Layouts a child from the top. More...
 
- Events inherited from ImageOverlay
EventHandler< ImageSourceChangedEventArgsImageSourceChanged
 Event that is fired when the parent DisplayCanvas' actual zoom factor is changed.
 
- Events inherited from OverlayBase
EventHandler< PropertyValueChangedEventArgs< DisplayCanvas > > ParentDisplayCanvasChanged
 Event that is fired when the parent DisplayCanvas is changed.
 
EventHandler< DisplayZoomEventArgsActualZoomFactorChanged
 Event that is fired when the parent DisplayCanvas' actual zoom factor is changed.
 

Detailed Description

Base class for image overlays that should not be clipped (i.e. that extend beyond their definition).

Member Function Documentation

◆ CoerceOverlayHeight()

virtual double CoerceOverlayHeight ( double  value)
protectedvirtual

Inheritors must override this to specify the effective overlay width (which should be total render extent regardless of clipping considerations).

Parameters
valueValue to be coerced.
Returns
Coercion result.

◆ CoerceOverlayWidth()

virtual double CoerceOverlayWidth ( double  value)
protectedvirtual

Inheritors must override this to specify the effective overlay width (which should be total render extent regardless of clipping considerations).

Parameters
valueValue to be coerced.
Returns
Coercion result.

◆ GetLayoutClip()

override System.Windows.Media.Geometry GetLayoutClip ( Size  layoutSlotSize)
protected

Prevent clipping at the edge of the user control (that way we can implement dragging of the overlay more easily).

Parameters
layoutSlotSizeIgnored.
Returns
null