Class SkinCaptureControls
- Namespace
- VisioForge.Core.UI.WPF.Skins
- Assembly
- VisioForge.Core.dll
A comprehensive WPF control that provides a skinnable video capture interface. This control manages capture controls, recording functionality, camera switching, and video effects with full skin support and auto-hide capabilities.
public class SkinCaptureControls : Grid, IAnimatable, ISupportInitialize, IFrameworkInputElement, IInputElement, IQueryAmbient, IAddChild, IDisposableInheritance
Implements
Inherited Members
Remarks
The SkinCaptureControls class provides a complete video capture interface including:
- Record/stop recording controls with visual state management
- Camera switching for multi-camera scenarios
- Video effects integration with real-time processing
- Full-screen mode support for capture scenarios
- Settings dialog integration
- Auto-hide functionality for overlay scenarios
- Duration display during recording
The control integrates with the VisioForge skinning system to provide customizable appearances and supports both mouse and keyboard interactions. All UI updates are properly marshalled to the UI thread for thread safety.
Constructors
SkinCaptureControls()
Initializes a new instance of the VisioForge.Core.UI.WPF.Skins.SkinCaptureControls class.
public SkinCaptureControls()Fields
SkinNameProperty
The skin name property.
public static readonly DependencyProperty SkinNamePropertyField Value
Properties
Capture
Gets or sets the video capture interface that this control manages.
public IVideoCaptureControls Capture { get; set; }Property Value
Remarks
Setting this property will automatically attach event handlers to monitor the capture state and update the UI accordingly. When changed, the previous capture interface will be properly unsubscribed from events.
SkinName
Gets or sets the name of the skin.
public string SkinName { get; set; }Property Value
Methods
Dispose(bool)
Releases unmanaged and - optionally - managed resources.
protected virtual void Dispose(bool disposing)Parameters
disposingbool-
trueto release both managed and unmanaged resources;falseto release only unmanaged resources.
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()OnAction
Occurs when a user action is performed on the capture controls.
public event EventHandler<SkinActionEventArgs> OnActionEvent Type
Remarks
This event is raised for various user interactions such as button clicks, allowing the host application to handle or override the default behavior. The event arguments contain information about the specific action performed.
OnRecordClick
Occurs when the record button is clicked.
public event EventHandler OnRecordClickEvent Type
Remarks
This event is raised when the user clicks the record button, allowing the host application to handle the recording operation or provide custom recording logic.
OnVideoEffectsClick
Occurs when the video effects button is clicked.
public event EventHandler OnVideoEffectsClickEvent Type
Remarks
This event is raised when the user clicks the video effects button, typically to open a video effects configuration dialog or panel.