diff --git a/docs/SearchHelp.aspx b/docs/SearchHelp.aspx
new file mode 100644
index 0000000..6e2a17b
--- /dev/null
+++ b/docs/SearchHelp.aspx
@@ -0,0 +1,233 @@
+<%@ Page Language="C#" EnableViewState="False" %>
+
+
diff --git a/docs/SearchHelp.inc.php b/docs/SearchHelp.inc.php
new file mode 100644
index 0000000..b905e13
--- /dev/null
+++ b/docs/SearchHelp.inc.php
@@ -0,0 +1,173 @@
+
+// Contributed to the Sandcastle Help File Builder project by Thomas Levesque
+
+class Ranking
+{
+ public $filename;
+ public $pageTitle;
+ public $rank;
+
+ function __construct($file, $title, $rank)
+ {
+ $this->filename = $file;
+ $this->pageTitle = $title;
+ $this->rank = $rank;
+ }
+}
+
+
+///
MainWindowInitializeComponent Method |
+ Namespace: + butterflow_ui
MainWindowtxtPlaybackRate_GotFocus Method |
+ Namespace: + butterflow_ui
ButterflowOption Constructor |
+ Namespace: + butterflow_ui
ButterflowOption Class |
+ Namespace: + butterflow_ui
The ButterflowOption type exposes the following members.
+ + | Name | Description |
---|---|---|
ButterflowOption | ||
ButterflowOption | Default constructor. |
+ + | Name | Description |
---|---|---|
DescriptionValue | Gets or sets the description value. | |
LabelValue | Gets or sets the label value. |
+ + | Name | Description |
---|---|---|
DescriptionValueProperty | The description value property. | |
LabelValueProperty | The label value property. |
OptionsWindow Properties |
The OptionsWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
SupportedLanguages | Gets or sets the supported languages. |
OptionsConfigurationfastPyramid Field |
+ Namespace: + butterflow_ui
ButterflowSubregionend Field |
+ Namespace: + butterflow_ui
InverseBoolConverterConvert Method |
+ Namespace: + butterflow_ui
public Object Convert( + Object value, + Type targetType, + Object parameter, + CultureInfo culture +)
Exception | Condition |
---|---|
InvalidCastException | Thrown when an object cannot be cast to a required + type. |
InverseBoolConverterConvertBack Method |
+ Namespace: + butterflow_ui
public Object ConvertBack( + Object value, + Type targetType, + Object parameter, + CultureInfo culture +)
Exception | Condition |
---|---|
InvalidCastException | Thrown when an object cannot be cast to a required + type. |
MainWindowbtnFilePicker Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.btnFilePicker"]
+ Namespace: + butterflow_ui
OptionsConfiguration Constructor |
+ Namespace: + butterflow_ui
ButterflowWrapperREGEX_RATE Field |
+ Namespace: + butterflow_ui
OptionsWindow Constructor |
+ Namespace: + butterflow_ui
ButterflowWrapperIsRunning Property |
+ Namespace: + butterflow_ui
MainWindowlistSubregions Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.listSubregions"]
+ Namespace: + butterflow_ui
OptionsConfigurationSubregions Property |
+ Namespace: + butterflow_ui
ButterflowWrapperRun Method |
+ + | Name | Description |
---|---|---|
Run(String) | Runs butterflow with the given arguments. | |
Run(OptionsConfiguration) | Runs butterflow with the given optionsConfiguration. |
MainWindowbntClip Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.bntClip"]
+ Namespace: + butterflow_ui
MainWindowbntVideoStop Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.bntVideoStop"]
+ Namespace: + butterflow_ui
OptionsConfigurationFilePyramidScale Property |
+ Namespace: + butterflow_ui
OptionsConfigurationiterations Field |
+ Namespace: + butterflow_ui
OptionsConfigurationFileFlowFilterType Property |
+ Namespace: + butterflow_ui
ButterflowWrapperRun Method (OptionsConfiguration) |
+ Namespace: + butterflow_ui
PropertyChangedAlerter Methods |
The PropertyChangedAlerter type exposes the following members.
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ |
OptionsConfigurationsmoothMotion Field |
+ Namespace: + butterflow_ui
OptionsWindow Fields |
The OptionsWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
_contentLoaded | ||
btnSave |
ButterflowOptionLabelValueProperty Field |
+ Namespace: + butterflow_ui
AboutWindow Constructor |
+ Namespace: + butterflow_ui
PropertyChangedAlerter Class |
+ Namespace: + butterflow_ui
The PropertyChangedAlerter type exposes the following members.
+ + | Name | Description |
---|---|---|
PropertyChangedAlerter | Initializes a new instance of the PropertyChangedAlerter class |
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ |
+ + | Name | Description |
---|---|---|
PropertyChanged | Occurs when a property value changes. |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. |
OptionsConfigurationFileSmoothDerivativeStandardDeviation Property |
+ Namespace: + butterflow_ui
ButterflowOption Constructor |
+ Namespace: + butterflow_ui
ButterflowSubregionIdentifier Property |
+ Namespace: + butterflow_ui
OptionsConfigurationFileWindowSize Property |
+ Namespace: + butterflow_ui
ButterflowSubregionstart Field |
+ Namespace: + butterflow_ui
OptionsConfigurationWidth Property |
+ Namespace: + butterflow_ui
OptionsConfigurationCommandLineOutput Property |
+ Namespace: + butterflow_ui
PropertyChangedAlerterPropertyChanged Event |
+ Namespace: + butterflow_ui
ButterflowSubregionvalue Field |
+ Namespace: + butterflow_ui
OptionsConfigurationLoadFile Method |
+ Namespace: + butterflow_ui
MainWindowmediaPreview Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.mediaPreview"]
+ Namespace: + butterflow_ui
AboutWindowbtnOK_Click Method |
+ Namespace: + butterflow_ui
AboutWindow_contentLoaded Field |
[Missing <summary> documentation for "F:butterflow_ui.AboutWindow._contentLoaded"]
+ Namespace: + butterflow_ui
MainWindow_contentLoaded Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow._contentLoaded"]
+ Namespace: + butterflow_ui
OptionsConfigurationFile Constructor |
+ Namespace: + butterflow_ui
MainWindowtxtFileOutputName Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.txtFileOutputName"]
+ Namespace: + butterflow_ui
OptionsConfigurationToButterflowArguments Method |
+ Namespace: + butterflow_ui
MainWindowtxtConsoleOutput Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.txtConsoleOutput"]
+ Namespace: + butterflow_ui
MainWindowtxtFileName Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.txtFileName"]
+ Namespace: + butterflow_ui
MainWindowmenuButterflowGithub Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuButterflowGithub"]
+ Namespace: + butterflow_ui
ButterflowWrapperParsedConsoleOutputRecieved Event |
+ Namespace: + butterflow_ui
public event EventHandler<ButterflowWrapperButterflowOutputArgs> ParsedConsoleOutputRecieved
MainWindowbntVideoPlay_Click Method |
+ Namespace: + butterflow_ui
ButterflowWrapper Events |
The ButterflowWrapper type exposes the following members.
+ + | Name | Description |
---|---|---|
ParsedConsoleOutputRecieved | Event queue for all listeners interested in ParsedConsoleOutputRecieved events. | |
PropertyChanged | Occurs when a property value changes. (Inherited from PropertyChangedAlerter.) |
ButterflowSubregionsubregionType Field |
+ Namespace: + butterflow_ui
ButterflowWrapperButterflowConsoleOutputArgs Constructor |
+ Namespace: + butterflow_ui
ButterflowSubregionValue Property |
+ Namespace: + butterflow_ui
OptionsConfiguration Fields |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. (Inherited from PropertyChangedAlerter.) | |
aspectRatio | The aspect ratio used for calculating heights when the aspect ratio is locked. | |
DEFAULT_FLOW_FILTER_TYPE | The default flow filter type setting. | |
DEFAULT_ITERATIONS | The default iterations setting. | |
DEFAULT_LEVELS | The default levels setting. | |
DEFAULT_PIXEL_NEIGHBORHOOD | The default pixel neighborhood setting. | |
DEFAULT_PYRAMID_SCALE | The default pyramid scale setting. | |
DEFAULT_SMOOTH_DERIVATIVE_STANDARD_DEVIATION | The default smooth derivative standard deviation setting. | |
DEFAULT_WINDOW_SIZE | The default window size setting. | |
fastPyramid | A value indicating whether or not to use fast pyramids when processing a video. | |
flowFilterType | Type of the flow filter to use for processing. | |
height | The height of the output video. | |
interpreter | An input interpreter used for converting string values to numeric values. | |
iterations | The number of iterations per pyramid level. | |
keepAudio | A value indicating whether or not to keep the original audio in the final video. | |
keepSubregions | A value indicating whether or not to render unspecified subregions. | |
levels | The level size setting. | |
lockAspectRatio | A value indicating whether or not to lock the aspect ratio to the of the video. | |
losslessQuality | A value indicating whether or not to render the final video with lossless quality. | |
pixelNeighborhood | The size of pixel neighborhood. | |
playbackRate | The playback rate. | |
pyramidScale | The pyramid scale setting. | |
smoothDerivativeStandardDeviation | The standard deviation of smooth derivatives | |
smoothMotion | A value indicating whether or not to tune processing for smooth motion. | |
subregions | The subregions of the video on which to process. | |
videoInput | The video input file. | |
videoOutput | The video output file. | |
width | The width of the output video. | |
windowSize | Size of the windowing average. |
OptionsConfigurationwidth Field |
+ Namespace: + butterflow_ui
ButterflowSubregion Fields |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. (Inherited from PropertyChangedAlerter.) | |
end | The end of the subregion. | |
identifier | A unique identifier used to locate this subregion withing a subregion collection. | |
start | The start of the subregion. | |
subregionType | Type of opersion to perform on the subregion. | |
toEnd | True if the subregion runs to the end, false if not. | |
value | The value targeted for the subregion. |
OptionsConfigurationheight Field |
+ Namespace: + butterflow_ui
AboutWindow Fields |
The AboutWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
_contentLoaded | ||
btnOK | ||
butterflowUIAboutWindow |
OptionsWindowbtnSave Field |
[Missing <summary> documentation for "F:butterflow_ui.OptionsWindow.btnSave"]
+ Namespace: + butterflow_ui
ButterflowWrapperREGEX_PROGRESS Field |
+ Namespace: + butterflow_ui
private const string REGEX_PROGRESS = "To write\:\s*\w*\s*\w*\,*\w*\s*(?<Progress>\d+\.*\d*)%"
OptionsWindow Class |
+ Namespace: + butterflow_ui
The OptionsWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
OptionsWindow | Default constructor. |
+ + | Name | Description |
---|---|---|
SupportedLanguages | Gets or sets the supported languages. |
+ + | Name | Description |
---|---|---|
btnSave_Click | Event handler. Called by btnSave for click events. | |
InitializeComponent |
+ InitializeComponent
+ |
+ + | Name | Description |
---|---|---|
_contentLoaded | ||
btnSave |
MainWindowmenuAboutButterflowUI_Click Method |
+ Namespace: + butterflow_ui
ButterflowWrapperexecutablePath Field |
+ Namespace: + butterflow_ui
ButterflowWrapper Constructor |
+ Namespace: + butterflow_ui
OptionsWindowInitializeComponent Method |
+ Namespace: + butterflow_ui
OptionsConfigurationplaybackRate Field |
+ Namespace: + butterflow_ui
MainWindowmenuOpen Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuOpen"]
+ Namespace: + butterflow_ui
ButterflowWrapperprogressPercentage Field |
+ Namespace: + butterflow_ui
AboutWindow Class |
+ Namespace: + butterflow_ui
The AboutWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
AboutWindow | Default constructor. |
+ + | Name | Description |
---|---|---|
btnOK_Click | Event handler. Called by btnOK for click events. | |
Hyperlink_RequestNavigate | Event handler. Called by Hyperlink for request navigate events. | |
InitializeComponent |
+ InitializeComponent
+ |
+ + | Name | Description |
---|---|---|
_contentLoaded | ||
btnOK | ||
butterflowUIAboutWindow |
MainWindowbntVideoForward_Click Method |
+ Namespace: + butterflow_ui
MainWindowmediaPreview_MediaEnded Method |
+ Namespace: + butterflow_ui
OptionsConfigurationDEFAULT_LEVELS Field |
+ Namespace: + butterflow_ui
MainWindowmenuAboutButterflowUI Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuAboutButterflowUI"]
+ Namespace: + butterflow_ui
ButterflowWrapperCancel Method |
+ Namespace: + butterflow_ui
MainWindow Methods |
The MainWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
_CreateDelegate | ||
bntClip_Click | Event handler. Called by bntClip for click events. | |
bntVideoBackward_Click | Event handler. Called by bntVideoBackward for click events. | |
bntVideoForward_Click | Event handler. Called by bntVideoForward for click events. | |
bntVideoPlay_Click | Event handler. Called by bntVideoPlay for click events. | |
bntVideoStop_Click | Event handler. Called by bntVideoStop for click events. | |
btnCancel_Click | Event handler. Called by btnCancel for click events. | |
btnCopyArguments_Click | Event handler. Called by btnCopyArguments for click events. | |
btnFileOutputPicker_Click | Event handler. Called by btnFileOutputPicker for click events. | |
btnFilePicker_Click | Event handler. Called by btnFilePicker for click events. | |
btnProcess_Click | Event handler. Called by btnProcess for click events. | |
btnRemoveSubregion_Click | Event handler. Called by btnRemoveSubregion for click events. | |
ButterflowWrapper_ParsedConsoleOutputRecieved | Butterflow wrapper parsed console output recieved. | |
GetRecursiveChildrenT | Gets the recursive children of a parent element that are of type T. | |
InitializeComponent |
+ InitializeComponent
+ | |
mediaPreview_MediaEnded | Event handler. Called by mediaPreview for media ended events. | |
mediaPreview_MediaOpened | Event handler. Called by mediaPreview for media opened events. | |
menuAboutButterflowUI_Click | Event handler. Called by menuAboutButterflowUI for click events. | |
menuButterflowGithub_Click | Event handler. Called by menuButterflowGithub for click events. | |
menuButterflowUIGithub_Click | Event handler. Called by menuButterflowUIGithub for click events. | |
menuOpen_Click | Event handler. Called by menuOpen for click events. | |
menuOptions_Click | Event handler. Called by menuOptions for click events. | |
menuSaveConfiguration_Click | Event handler. Called by menuSaveConfiguration for click events. | |
PlaybackRateRadioButton_Checked | Event handler. Called by PlaybackRate radio buttons for checked events. | |
ScrollViewer_ScrollChanged | Event handler. Called by ScrollViewer for scroll changed events. | |
txtPlaybackRate_GotFocus | Event handler. Called by txtPlaybackRate for got focus events. |
OptionsConfiguration Constructor |
+ Namespace: + butterflow_ui
MainWindowbtnFileOutputPicker_Click Method |
+ Namespace: + butterflow_ui
OptionsConfigurationFileLevels Property |
+ Namespace: + butterflow_ui
ButterflowOptionDescriptionValueProperty Field |
+ Namespace: + butterflow_ui
ButterflowWrapperButterflowOutputType Enumeration |
+ Namespace: + butterflow_ui
+ + | Member name | Value | Description |
---|---|---|---|
Width | 0 | Video Width. | |
Height | 1 | Video Height. | |
Rate | 2 | Video playback rate. | |
Progress | 3 | Video processing progress. |
RegionType Enumeration |
+ Namespace: + butterflow_ui
+ + | Member name | Value | Description |
---|---|---|---|
spd | 0 | Speed. | |
dur | 1 | Duration. | |
fps | 2 | Frames per second. |
ButterflowWrapperButterflowConsoleOutputArgs Class |
+ Namespace: + butterflow_ui
The ButterflowWrapperButterflowConsoleOutputArgs type exposes the following members.
+ + | Name | Description |
---|---|---|
ButterflowWrapperButterflowConsoleOutputArgs | Constructor. |
+ + | Name | Description |
---|---|---|
ConsoleOutput | Gets the console output. |
OptionsConfigurationkeepSubregions Field |
+ Namespace: + butterflow_ui
MainWindowGetRecursiveChildrenT Method |
+ Namespace: + butterflow_ui
private IEnumerable<T> GetRecursiveChildren<T>( + Object parent +) +where T : DependencyObject +
ButterflowSubregionidentifier Field |
+ Namespace: + butterflow_ui
OptionsConfigurationPlaybackRate Property |
+ Namespace: + butterflow_ui
OptionsConfigurationPixelNeighborhood Property |
+ Namespace: + butterflow_ui
MainWindowOptionsConfiguration Property |
+ Namespace: + butterflow_ui
OptionsConfigurationvideoOutput Field |
+ Namespace: + butterflow_ui
InverseBoolConverter Class |
+ Namespace: + butterflow_ui
The InverseBoolConverter type exposes the following members.
+ + | Name | Description |
---|---|---|
InverseBoolConverter | Initializes a new instance of the InverseBoolConverter class |
+ + | Name | Description |
---|---|---|
Convert | Converts a boolean to its inverse. | |
ConvertBack | Converts an inverse boolean back to its original state. |
MainWindowbntVideoForward Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.bntVideoForward"]
+ Namespace: + butterflow_ui
OptionsConfigurationFileLockAspectRatio Property |
+ Namespace: + butterflow_ui
ButterflowWrapperButterflowConsoleOutputArgsConsoleOutput Property |
+ Namespace: + butterflow_ui
App Methods |
The App type exposes the following members.
+ + | Name | Description |
---|---|---|
InitializeComponent |
+ InitializeComponent
+ | |
Main |
+ Application Entry Point.
+ | |
OnStartup | Raises the Startup event. (Overrides ApplicationOnStartup(StartupEventArgs).) |
ButterflowWrapperProbe Method |
+ Namespace: + butterflow_ui
OptionsConfigurationDEFAULT_PIXEL_NEIGHBORHOOD Field |
+ Namespace: + butterflow_ui
OptionsConfigurationFilePixelNeighborhood Property |
+ Namespace: + butterflow_ui
MainWindowprogressBar Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.progressBar"]
+ Namespace: + butterflow_ui
OptionsConfigurationSubregionPropertyChanged Method |
[Missing <summary> documentation for "M:butterflow_ui.OptionsConfiguration.SubregionPropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)"]
+ Namespace: + butterflow_ui
private void SubregionPropertyChanged( + Object sender, + PropertyChangedEventArgs e +)
[Missing <param name="sender"/> documentation for "M:butterflow_ui.OptionsConfiguration.SubregionPropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)"]
[Missing <param name="e"/> documentation for "M:butterflow_ui.OptionsConfiguration.SubregionPropertyChanged(System.Object,System.ComponentModel.PropertyChangedEventArgs)"]
OptionsConfiguration Methods |
The OptionsConfiguration type exposes the following members.
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. (Inherited from PropertyChangedAlerter.) | |
LoadFile | Loads an option configuration file's contents into the . | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. (Inherited from PropertyChangedAlerter.) | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ (Inherited from PropertyChangedAlerter.) | |
SubregionPropertyChanged | ||
Subregions_CollectionChanged | Event handler. Called by Subregions for collection changed events. | |
ToButterflowArguments | Converts this object to a butterflow options. | |
ToFile | Converts this object to a . | |
ToString | Returns a string that represents the current object. (Overrides ObjectToString.) |
ButterflowOption Fields |
The ButterflowOption type exposes the following members.
+ + | Name | Description |
---|---|---|
DescriptionValueProperty | The description value property. | |
LabelValueProperty | The label value property. |
OptionsConfigurationDEFAULT_PYRAMID_SCALE Field |
+ Namespace: + butterflow_ui
ButterflowWrapperButterflowOutputArgs Class |
+ Namespace: + butterflow_ui
The ButterflowWrapperButterflowOutputArgs type exposes the following members.
+ + | Name | Description |
---|---|---|
ButterflowWrapperButterflowOutputArgs | Constructor. |
+ + | Name | Description |
---|---|---|
ConsoleOutput | Gets the console output. (Inherited from ButterflowWrapperButterflowConsoleOutputArgs.) | |
OutputType | Gets or sets the type of the output detected from butterflow. | |
Value | Gets or sets the value detected from butterflow. |
OptionsConfigurationLevels Property |
+ Namespace: + butterflow_ui
PropertyChangedAlerter Fields |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. |
ButterflowWrapperButterflowOutputArgsValue Property |
+ Namespace: + butterflow_ui
OptionsConfigurationLockAspectRatio Property |
+ Namespace: + butterflow_ui
OptionsConfigurationIterations Property |
+ Namespace: + butterflow_ui
AboutWindowbtnOK Field |
[Missing <summary> documentation for "F:butterflow_ui.AboutWindow.btnOK"]
+ Namespace: + butterflow_ui
ButterflowWrapper Properties |
The ButterflowWrapper type exposes the following members.
+ + | Name | Description |
---|---|---|
ConsoleOutput | Gets the console output from butterflow. | |
IsRunning | Gets a value indicating whether butterflow is currently running. | |
ProgressPercentage | Gets the progress percentage as reported by butterflow. |
OptionsConfigurationFile Properties |
The OptionsConfigurationFile type exposes the following members.
+ + | Name | Description |
---|---|---|
FastPyramid | Gets or sets a value indicating whether to use fast pyramids. | |
FlowFilterType | Gets or sets the type of the flow filter used for optical flow calculations. | |
Iterations | Gets or sets the number of iterations at each pyramid level. | |
KeepAudio | Gets or sets a value indicating whether the keep audio. | |
KeepSubregions | Gets or sets a value indicating whether the keep subregions that are not explicitly specified. | |
Levels | Gets or sets the number of pyramid layers. | |
LockAspectRatio | Gets or sets a value indicating whether to lock aspect ratio of the video. | |
LosslessQuality | Gets or sets a value indicating whether the result is rendered in lossless quality. | |
PixelNeighborhood | Gets or sets the size of the pixel neighborhood. | |
PlaybackRate | Gets or sets the playback rate. | |
PyramidScale | Gets or sets the pyramid scale factor. | |
SmoothDerivativeStandardDeviation | Gets or sets the standard deviation of smooth derivatives. | |
SmoothMotion | Gets or sets a value indicating whether the butterflow should be turned toward smooth motion. | |
WindowSize | Gets or sets the size of the windowing average. |
MainWindowButterflowWrapper Property |
+ Namespace: + butterflow_ui
OptionsConfigurationFileIterations Property |
+ Namespace: + butterflow_ui
OptionsConfigurationLosslessQuality Property |
+ Namespace: + butterflow_ui
MainWindowbntClip_Click Method |
+ Namespace: + butterflow_ui
ButterflowOptionLabelValue Property |
+ Namespace: + butterflow_ui
MainWindowClippingButtonIcon Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.ClippingButtonIcon"]
+ Namespace: + butterflow_ui
OptionsConfigurationFileFastPyramid Property |
+ Namespace: + butterflow_ui
MainWindowbntVideoPlay Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.bntVideoPlay"]
+ Namespace: + butterflow_ui
ButterflowOptionDescriptionValue Property |
+ Namespace: + butterflow_ui
OptionsConfigurationDEFAULT_ITERATIONS Field |
+ Namespace: + butterflow_ui
MainWindow Class |
+ Namespace: + butterflow_ui
The MainWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
MainWindow | Default constructor. |
+ + | Name | Description |
---|---|---|
ButterflowWrapper | The butterflow wrapper used to call butterflow. | |
OptionsConfiguration | Gets or sets the butterflow options configuration. |
+ + | Name | Description |
---|---|---|
_CreateDelegate | ||
bntClip_Click | Event handler. Called by bntClip for click events. | |
bntVideoBackward_Click | Event handler. Called by bntVideoBackward for click events. | |
bntVideoForward_Click | Event handler. Called by bntVideoForward for click events. | |
bntVideoPlay_Click | Event handler. Called by bntVideoPlay for click events. | |
bntVideoStop_Click | Event handler. Called by bntVideoStop for click events. | |
btnCancel_Click | Event handler. Called by btnCancel for click events. | |
btnCopyArguments_Click | Event handler. Called by btnCopyArguments for click events. | |
btnFileOutputPicker_Click | Event handler. Called by btnFileOutputPicker for click events. | |
btnFilePicker_Click | Event handler. Called by btnFilePicker for click events. | |
btnProcess_Click | Event handler. Called by btnProcess for click events. | |
btnRemoveSubregion_Click | Event handler. Called by btnRemoveSubregion for click events. | |
ButterflowWrapper_ParsedConsoleOutputRecieved | Butterflow wrapper parsed console output recieved. | |
GetRecursiveChildrenT | Gets the recursive children of a parent element that are of type T. | |
InitializeComponent |
+ InitializeComponent
+ | |
mediaPreview_MediaEnded | Event handler. Called by mediaPreview for media ended events. | |
mediaPreview_MediaOpened | Event handler. Called by mediaPreview for media opened events. | |
menuAboutButterflowUI_Click | Event handler. Called by menuAboutButterflowUI for click events. | |
menuButterflowGithub_Click | Event handler. Called by menuButterflowGithub for click events. | |
menuButterflowUIGithub_Click | Event handler. Called by menuButterflowUIGithub for click events. | |
menuOpen_Click | Event handler. Called by menuOpen for click events. | |
menuOptions_Click | Event handler. Called by menuOptions for click events. | |
menuSaveConfiguration_Click | Event handler. Called by menuSaveConfiguration for click events. | |
PlaybackRateRadioButton_Checked | Event handler. Called by PlaybackRate radio buttons for checked events. | |
ScrollViewer_ScrollChanged | Event handler. Called by ScrollViewer for scroll changed events. | |
txtPlaybackRate_GotFocus | Event handler. Called by txtPlaybackRate for got focus events. |
+ + | Name | Description |
---|---|---|
_contentLoaded | ||
bntClip | ||
bntVideoBackward | ||
bntVideoForward | ||
bntVideoPlay | ||
bntVideoStop | ||
btnCancel | ||
btnCopyArguments | ||
btnFileOutputPicker | ||
btnFilePicker | ||
btnProcess | ||
butterflowUIWindow | ||
ClippingButtonIcon | ||
clipStart | The temporary storage for the clip start time. | |
isClipping | True if is the user has started clipping, false if not. | |
listSubregions | ||
mediaPreview | ||
menuAboutButterflowUI | ||
menuButterflowGithub | ||
menuButterflowUIGithub | ||
menuCopyArguments | ||
menuOpen | ||
menuOptions | ||
menuSaveConfiguration | ||
PlayPauseButtonIcon | ||
progressBar | ||
sliderMedia | ||
txtConsoleOutput | ||
txtFileName | ||
txtFileOutputName | ||
txtPlaybackRate |
MainWindowbtnCopyArguments Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.btnCopyArguments"]
+ Namespace: + butterflow_ui
MainWindowmenuOptions Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuOptions"]
+ Namespace: + butterflow_ui
OptionsConfigurationvideoInput Field |
+ Namespace: + butterflow_ui
OptionsConfigurationflowFilterType Field |
+ Namespace: + butterflow_ui
ButterflowWrapperREGEX_RESOLUTION Field |
+ Namespace: + butterflow_ui
MainWindowtxtPlaybackRate Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.txtPlaybackRate"]
+ Namespace: + butterflow_ui
ButterflowConsoleOutputArgs Properties |
The ButterflowWrapperButterflowConsoleOutputArgs type exposes the following members.
+ + | Name | Description |
---|---|---|
ConsoleOutput | Gets the console output. |
InverseBoolConverter Methods |
The InverseBoolConverter type exposes the following members.
+ + | Name | Description |
---|---|---|
Convert | Converts a boolean to its inverse. | |
ConvertBack | Converts an inverse boolean back to its original state. |
OptionsConfigurationDEFAULT_FLOW_FILTER_TYPE Field |
+ Namespace: + butterflow_ui
OptionsConfigurationVideoOutput Property |
+ Namespace: + butterflow_ui
ButterflowWrapperButterflowOutputArgs Constructor |
+ Namespace: + butterflow_ui
public ButterflowOutputArgs( + ButterflowWrapperButterflowOutputType outputType, + string value, + string consoleOutput +)
OptionsConfigurationkeepAudio Field |
+ Namespace: + butterflow_ui
InverseBoolConverter Constructor |
+ Namespace: + butterflow_ui
OptionsConfigurationWindowSize Property |
+ Namespace: + butterflow_ui
MainWindow Properties |
The MainWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
ButterflowWrapper | The butterflow wrapper used to call butterflow. | |
OptionsConfiguration | Gets or sets the butterflow options configuration. |
OptionsConfigurationDEFAULT_SMOOTH_DERIVATIVE_STANDARD_DEVIATION Field |
+ Namespace: + butterflow_ui
OptionsConfiguration Class |
+ Namespace: + butterflow_ui
The OptionsConfiguration type exposes the following members.
+ + | Name | Description |
---|---|---|
OptionsConfiguration | ||
OptionsConfiguration | Default constructor. |
+ + | Name | Description |
---|---|---|
CommandLineOutput | Gets the command line output given the current configuration. | |
FastPyramid | Gets or sets a value indicating whether to use fast pyramids. | |
FlowFilterType | Gets or sets the type of the flow filter used for optical flow calculations. | |
Height | Gets or sets the height of the video output. | |
Iterations | Gets or sets the number of iterations at each pyramid level. | |
KeepAudio | Gets or sets a value indicating whether the keep audio. | |
KeepSubregions | Gets or sets a value indicating whether the keep subregions that are not explicitly specified. | |
Levels | Gets or sets the number of pyramid layers. | |
LockAspectRatio | Gets or sets a value indicating whether to lock aspect ratio of the video. | |
LosslessQuality | Gets or sets a value indicating whether the result is rendered in lossless quality. | |
PixelNeighborhood | Gets or sets the size of the pixel neighborhood. | |
PlaybackRate | Gets or sets the playback rate. | |
PyramidScale | Gets or sets the pyramid scale factor. | |
SmoothDerivativeStandardDeviation | Gets or sets the standard deviation of smooth derivatives. | |
SmoothMotion | Gets or sets a value indicating whether the butterflow should be turned toward smooth motion. | |
Subregions | Gets or sets the subregions of the video on which to work. | |
VideoInput | Gets or sets the video input file path. | |
VideoOutput | Gets or sets the video output file path. | |
Width | Gets or sets the width of the video output. | |
WindowSize | Gets or sets the size of the windowing average. |
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. (Inherited from PropertyChangedAlerter.) | |
LoadFile | Loads an option configuration file's contents into the . | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. (Inherited from PropertyChangedAlerter.) | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ (Inherited from PropertyChangedAlerter.) | |
SubregionPropertyChanged | ||
Subregions_CollectionChanged | Event handler. Called by Subregions for collection changed events. | |
ToButterflowArguments | Converts this object to a butterflow options. | |
ToFile | Converts this object to a . | |
ToString | Returns a string that represents the current object. (Overrides ObjectToString.) |
+ + | Name | Description |
---|---|---|
PropertyChanged | Occurs when a property value changes. (Inherited from PropertyChangedAlerter.) |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. (Inherited from PropertyChangedAlerter.) | |
aspectRatio | The aspect ratio used for calculating heights when the aspect ratio is locked. | |
DEFAULT_FLOW_FILTER_TYPE | The default flow filter type setting. | |
DEFAULT_ITERATIONS | The default iterations setting. | |
DEFAULT_LEVELS | The default levels setting. | |
DEFAULT_PIXEL_NEIGHBORHOOD | The default pixel neighborhood setting. | |
DEFAULT_PYRAMID_SCALE | The default pyramid scale setting. | |
DEFAULT_SMOOTH_DERIVATIVE_STANDARD_DEVIATION | The default smooth derivative standard deviation setting. | |
DEFAULT_WINDOW_SIZE | The default window size setting. | |
fastPyramid | A value indicating whether or not to use fast pyramids when processing a video. | |
flowFilterType | Type of the flow filter to use for processing. | |
height | The height of the output video. | |
interpreter | An input interpreter used for converting string values to numeric values. | |
iterations | The number of iterations per pyramid level. | |
keepAudio | A value indicating whether or not to keep the original audio in the final video. | |
keepSubregions | A value indicating whether or not to render unspecified subregions. | |
levels | The level size setting. | |
lockAspectRatio | A value indicating whether or not to lock the aspect ratio to the of the video. | |
losslessQuality | A value indicating whether or not to render the final video with lossless quality. | |
pixelNeighborhood | The size of pixel neighborhood. | |
playbackRate | The playback rate. | |
pyramidScale | The pyramid scale setting. | |
smoothDerivativeStandardDeviation | The standard deviation of smooth derivatives | |
smoothMotion | A value indicating whether or not to tune processing for smooth motion. | |
subregions | The subregions of the video on which to process. | |
videoInput | The video input file. | |
videoOutput | The video output file. | |
width | The width of the output video. | |
windowSize | Size of the windowing average. |
AppInitializeComponent Method |
+ Namespace: + butterflow_ui
AppMain Method |
+ Namespace: + butterflow_ui
PropertyChangedAlerter Events |
The PropertyChangedAlerter type exposes the following members.
+ + | Name | Description |
---|---|---|
PropertyChanged | Occurs when a property value changes. |
MainWindowmediaPreview_MediaOpened Method |
+ Namespace: + butterflow_ui
MainWindowmenuOptions_Click Method |
+ Namespace: + butterflow_ui
PropertyChangedAlerterAddConstantCallProperty Method |
+ Namespace: + butterflow_ui
ButterflowWrapperButterflowOutputArgsOutputType Property |
+ Namespace: + butterflow_ui
ButterflowOption Properties |
The ButterflowOption type exposes the following members.
+ + | Name | Description |
---|---|---|
DescriptionValue | Gets or sets the description value. | |
LabelValue | Gets or sets the label value. |
ButterflowWrapperProgressPercentage Property |
+ Namespace: + butterflow_ui
MainWindowbtnFilePicker_Click Method |
+ Namespace: + butterflow_ui
OptionsConfiguration Properties |
The OptionsConfiguration type exposes the following members.
+ + | Name | Description |
---|---|---|
CommandLineOutput | Gets the command line output given the current configuration. | |
FastPyramid | Gets or sets a value indicating whether to use fast pyramids. | |
FlowFilterType | Gets or sets the type of the flow filter used for optical flow calculations. | |
Height | Gets or sets the height of the video output. | |
Iterations | Gets or sets the number of iterations at each pyramid level. | |
KeepAudio | Gets or sets a value indicating whether the keep audio. | |
KeepSubregions | Gets or sets a value indicating whether the keep subregions that are not explicitly specified. | |
Levels | Gets or sets the number of pyramid layers. | |
LockAspectRatio | Gets or sets a value indicating whether to lock aspect ratio of the video. | |
LosslessQuality | Gets or sets a value indicating whether the result is rendered in lossless quality. | |
PixelNeighborhood | Gets or sets the size of the pixel neighborhood. | |
PlaybackRate | Gets or sets the playback rate. | |
PyramidScale | Gets or sets the pyramid scale factor. | |
SmoothDerivativeStandardDeviation | Gets or sets the standard deviation of smooth derivatives. | |
SmoothMotion | Gets or sets a value indicating whether the butterflow should be turned toward smooth motion. | |
Subregions | Gets or sets the subregions of the video on which to work. | |
VideoInput | Gets or sets the video input file path. | |
VideoOutput | Gets or sets the video output file path. | |
Width | Gets or sets the width of the video output. | |
WindowSize | Gets or sets the size of the windowing average. |
OptionsConfigurationFlowFilterType Property |
+ Namespace: + butterflow_ui
ButterflowWrapper Methods |
The ButterflowWrapper type exposes the following members.
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. (Inherited from PropertyChangedAlerter.) | |
Cancel | Kills the running instance of butterflow, cancelling its current operation. | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. (Inherited from PropertyChangedAlerter.) | |
OnParsedConsoleOutputRecieved | Executes the parsed console output recieved action. | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ (Inherited from PropertyChangedAlerter.) | |
ParseConsoleOutput |
+ Parses console output and attempts to find known values. If a known value is found, the
+ event is triggered.
+ | |
Probe | Probes a video file. | |
Process_Exited | Event handler. Called by Process for exited events. | |
Process_OutputDataReceived | Event handler. Called by Process for output data received events. | |
Run(String) | Runs butterflow with the given arguments. | |
Run(OptionsConfiguration) | Runs butterflow with the given optionsConfiguration. |
PropertyChangedAlerter Constructor |
+ Namespace: + butterflow_ui
ButterflowWrapperconsoleOutput Field |
+ Namespace: + butterflow_ui
ButterflowSubregion Constructor |
+ Namespace: + butterflow_ui
OptionsConfigurationKeepAudio Property |
+ Namespace: + butterflow_ui
MainWindowbtnCancel_Click Method |
+ Namespace: + butterflow_ui
Please try to load the page again. If the error persists, please contact the site administrator.
+The URL might be misspelled or the page you are looking for is no longer available. If you entered +the web address, check that it doesn't contain a typo. You can use the search box at the top of the page to +try and locate the page.
+OptionsConfigurationHeight Property |
+ Namespace: + butterflow_ui
MainWindowbutterflowUIWindow Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.butterflowUIWindow"]
+ Namespace: + butterflow_ui
ButterflowSubregionSubregionType Property |
+ Namespace: + butterflow_ui
ButterflowWrapperParseConsoleOutput Method |
+ Namespace: + butterflow_ui
ButterflowSubregion Properties |
The ButterflowSubregion type exposes the following members.
+ + | Name | Description |
---|---|---|
End | Gets or sets the end of the subregion. | |
Identifier | Gets a unique identifier used to locate this subregion withing a subregion collection. | |
Start | Gets or sets the start of the subregion. | |
SubregionType | Gets or sets the operation to be performed on the subregion. | |
ToEnd | Gets or sets a value indicating whether the subregion runs to the end of the video. | |
Value | Gets or sets the targeted value of the subregion. |
OptionsConfigurationlevels Field |
+ Namespace: + butterflow_ui
ButterflowSubregionStart Property |
+ Namespace: + butterflow_ui
MainWindowbtnFileOutputPicker Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.btnFileOutputPicker"]
+ Namespace: + butterflow_ui
ButterflowWrapperinterpreter Field |
+ Namespace: + butterflow_ui
MainWindowbtnCancel Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.btnCancel"]
+ Namespace: + butterflow_ui
ButterflowWrapperProcess_OutputDataReceived Method |
+ Namespace: + butterflow_ui
MainWindowScrollViewer_ScrollChanged Method |
+ Namespace: + butterflow_ui
private void ScrollViewer_ScrollChanged( + Object sender, + ScrollChangedEventArgs e +)
MainWindowbntVideoBackward_Click Method |
+ Namespace: + butterflow_ui
MainWindowmenuButterflowUIGithub_Click Method |
+ Namespace: + butterflow_ui
ButterflowWrapperConsoleOutput Property |
+ Namespace: + butterflow_ui
ButterflowWrapperisRunning Field |
+ Namespace: + butterflow_ui
MainWindowmenuButterflowUIGithub Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuButterflowUIGithub"]
+ Namespace: + butterflow_ui
MainWindowPlaybackRateRadioButton_Checked Method |
+ Namespace: + butterflow_ui
ButterflowSubregiontoEnd Field |
+ Namespace: + butterflow_ui
OptionsConfigurationFile Class |
+ Namespace: + butterflow_ui
The OptionsConfigurationFile type exposes the following members.
+ + | Name | Description |
---|---|---|
OptionsConfigurationFile | Initializes a new instance of the OptionsConfigurationFile class |
+ + | Name | Description |
---|---|---|
FastPyramid | Gets or sets a value indicating whether to use fast pyramids. | |
FlowFilterType | Gets or sets the type of the flow filter used for optical flow calculations. | |
Iterations | Gets or sets the number of iterations at each pyramid level. | |
KeepAudio | Gets or sets a value indicating whether the keep audio. | |
KeepSubregions | Gets or sets a value indicating whether the keep subregions that are not explicitly specified. | |
Levels | Gets or sets the number of pyramid layers. | |
LockAspectRatio | Gets or sets a value indicating whether to lock aspect ratio of the video. | |
LosslessQuality | Gets or sets a value indicating whether the result is rendered in lossless quality. | |
PixelNeighborhood | Gets or sets the size of the pixel neighborhood. | |
PlaybackRate | Gets or sets the playback rate. | |
PyramidScale | Gets or sets the pyramid scale factor. | |
SmoothDerivativeStandardDeviation | Gets or sets the standard deviation of smooth derivatives. | |
SmoothMotion | Gets or sets a value indicating whether the butterflow should be turned toward smooth motion. | |
WindowSize | Gets or sets the size of the windowing average. |
OptionsConfigurationFastPyramid Property |
+ Namespace: + butterflow_ui
ButterflowSubregionEnd Property |
+ Namespace: + butterflow_ui
MainWindowclipStart Field |
+ Namespace: + butterflow_ui
MainWindowmenuSaveConfiguration_Click Method |
+ Namespace: + butterflow_ui
OptionsConfigurationpixelNeighborhood Field |
+ Namespace: + butterflow_ui
ButterflowSubregion Class |
+ Namespace: + butterflow_ui
The ButterflowSubregion type exposes the following members.
+ + | Name | Description |
---|---|---|
ButterflowSubregion | Initializes a new instance of the ButterflowSubregion class |
+ + | Name | Description |
---|---|---|
End | Gets or sets the end of the subregion. | |
Identifier | Gets a unique identifier used to locate this subregion withing a subregion collection. | |
Start | Gets or sets the start of the subregion. | |
SubregionType | Gets or sets the operation to be performed on the subregion. | |
ToEnd | Gets or sets a value indicating whether the subregion runs to the end of the video. | |
Value | Gets or sets the targeted value of the subregion. |
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. (Inherited from PropertyChangedAlerter.) | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. (Inherited from PropertyChangedAlerter.) | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ (Inherited from PropertyChangedAlerter.) |
+ + | Name | Description |
---|---|---|
PropertyChanged | Occurs when a property value changes. (Inherited from PropertyChangedAlerter.) |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. (Inherited from PropertyChangedAlerter.) | |
end | The end of the subregion. | |
identifier | A unique identifier used to locate this subregion withing a subregion collection. | |
start | The start of the subregion. | |
subregionType | Type of opersion to perform on the subregion. | |
toEnd | True if the subregion runs to the end, false if not. | |
value | The value targeted for the subregion. |
ButterflowWrapperOnParsedConsoleOutputRecieved Method |
+ Namespace: + butterflow_ui
private void OnParsedConsoleOutputRecieved( + ButterflowWrapperButterflowOutputType outputType, + string value, + string consoleOutput +)
MainWindow Fields |
The MainWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
_contentLoaded | ||
bntClip | ||
bntVideoBackward | ||
bntVideoForward | ||
bntVideoPlay | ||
bntVideoStop | ||
btnCancel | ||
btnCopyArguments | ||
btnFileOutputPicker | ||
btnFilePicker | ||
btnProcess | ||
butterflowUIWindow | ||
ClippingButtonIcon | ||
clipStart | The temporary storage for the clip start time. | |
isClipping | True if is the user has started clipping, false if not. | |
listSubregions | ||
mediaPreview | ||
menuAboutButterflowUI | ||
menuButterflowGithub | ||
menuButterflowUIGithub | ||
menuCopyArguments | ||
menuOpen | ||
menuOptions | ||
menuSaveConfiguration | ||
PlayPauseButtonIcon | ||
progressBar | ||
sliderMedia | ||
txtConsoleOutput | ||
txtFileName | ||
txtFileOutputName | ||
txtPlaybackRate |
AboutWindowInitializeComponent Method |
+ Namespace: + butterflow_ui
MainWindowbntVideoBackward Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.bntVideoBackward"]
+ Namespace: + butterflow_ui
OptionsConfigurationSmoothDerivativeStandardDeviation Property |
+ Namespace: + butterflow_ui
OptionsConfiguration Events |
The OptionsConfiguration type exposes the following members.
+ + | Name | Description |
---|---|---|
PropertyChanged | Occurs when a property value changes. (Inherited from PropertyChangedAlerter.) |
OptionsConfigurationinterpreter Field |
+ Namespace: + butterflow_ui
AppOnStartup Method |
+ Namespace: + butterflow_ui
OptionsConfigurationSmoothMotion Property |
+ Namespace: + butterflow_ui
OptionsConfigurationVideoInput Property |
+ Namespace: + butterflow_ui
OptionsWindowbtnSave_Click Method |
+ Namespace: + butterflow_ui
MainWindowsliderMedia Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.sliderMedia"]
+ Namespace: + butterflow_ui
ButterflowSubregion Events |
The ButterflowSubregion type exposes the following members.
+ + | Name | Description |
---|---|---|
PropertyChanged | Occurs when a property value changes. (Inherited from PropertyChangedAlerter.) |
App Class |
+ Namespace: + butterflow_ui
The App type exposes the following members.
+ + | Name | Description |
---|---|---|
InitializeComponent |
+ InitializeComponent
+ | |
Main |
+ Application Entry Point.
+ | |
OnStartup | Raises the Startup event. (Overrides ApplicationOnStartup(StartupEventArgs).) |
+ + | Name | Description |
---|---|---|
_contentLoaded |
MainWindowbtnRemoveSubregion_Click Method |
+ Namespace: + butterflow_ui
OptionsConfigurationSubregions_CollectionChanged Method |
+ Namespace: + butterflow_ui
private void Subregions_CollectionChanged( + Object sender, + NotifyCollectionChangedEventArgs e +)
AboutWindowbutterflowUIAboutWindow Field |
[Missing <summary> documentation for "F:butterflow_ui.AboutWindow.butterflowUIAboutWindow"]
+ Namespace: + butterflow_ui
ButterflowWrapperrunningProcess Field |
+ Namespace: + butterflow_ui
OptionsConfigurationFileLosslessQuality Property |
+ Namespace: + butterflow_ui
MainWindowmenuCopyArguments Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuCopyArguments"]
+ Namespace: + butterflow_ui
MainWindowisClipping Field |
+ Namespace: + butterflow_ui
OptionsConfigurationPyramidScale Property |
+ Namespace: + butterflow_ui
MainWindow_CreateDelegate Method |
[Missing <summary> documentation for "M:butterflow_ui.MainWindow._CreateDelegate(System.Type,System.String)"]
+ Namespace: + butterflow_ui
[Missing <param name="delegateType"/> documentation for "M:butterflow_ui.MainWindow._CreateDelegate(System.Type,System.String)"]
[Missing <param name="handler"/> documentation for "M:butterflow_ui.MainWindow._CreateDelegate(System.Type,System.String)"]
[Missing <returns> documentation for "M:butterflow_ui.MainWindow._CreateDelegate(System.Type,System.String)"]
OptionsConfigurationpyramidScale Field |
+ Namespace: + butterflow_ui
PropertyChangedAlerteralwaysCall Field |
+ Namespace: + butterflow_ui
FlowFilterType Enumeration |
+ Namespace: + butterflow_ui
+ + | Member name | Value | Description |
---|---|---|---|
box | 0 | Box. | |
gaussian | 1 | Gaussian. |
App_contentLoaded Field |
[Missing <summary> documentation for "F:butterflow_ui.App._contentLoaded"]
+ Namespace: + butterflow_ui
MainWindowmenuOpen_Click Method |
+ Namespace: + butterflow_ui
butterflow_ui Namespace |
+ + | Class | Description |
---|---|---|
AboutWindow |
+ Interaction logic for AboutWindow.xaml
+ | |
App |
+ Interaction logic for App.xaml
+ | |
ButterflowOption | A butterflowUI option. Contains layout information for use in butterflowUI. | |
ButterflowSubregion | A butterflow video subregion. Represents a snippet of a video on which butterflow will act. | |
ButterflowWrapper | A butterflow wrapper. Provides interaction with the butterflow executable. | |
ButterflowWrapperButterflowConsoleOutputArgs | Arguments for butterflow console output events. | |
ButterflowWrapperButterflowOutputArgs | Arguments for butterflow output events where a known value of type can be parsed. | |
InverseBoolConverter | An inverse boolean converter. | |
MainWindow |
+ Interaction logic for MainWindow.xaml
+ | |
OptionsConfiguration | The butterflow options configuration. Contians all the options necessary to run butterflow and process a video. | |
OptionsConfigurationFile | An options configuration file. This class is used to serialize out the configuration to a file. | |
OptionsWindow |
+ Interaction logic for OptionsWindow.xaml
+ | |
PropertyChangedAlerter | A class responsible for implementing the INotifyPropertyChanged interface and helper functions. |
+ + | Enumeration | Description |
---|---|---|
ButterflowWrapperButterflowOutputType | Values that represent butterflow output types. | |
FlowFilterType | Values that represent a flow filter type used for optical flow calculations. | |
RegionType | Values that represent subregion types. |
MainWindowbtnCopyArguments_Click Method |
+ Namespace: + butterflow_ui
OptionsConfigurationsubregions Field |
+ Namespace: + butterflow_ui
OptionsConfigurationToFile Method |
+ Namespace: + butterflow_ui
OptionsConfigurationDEFAULT_WINDOW_SIZE Field |
+ Namespace: + butterflow_ui
OptionsConfigurationlosslessQuality Field |
+ Namespace: + butterflow_ui
MainWindowbtnProcess_Click Method |
+ Namespace: + butterflow_ui
ButterflowSubregionToEnd Property |
+ Namespace: + butterflow_ui
ButterflowWrapper Fields |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. (Inherited from PropertyChangedAlerter.) | |
consoleOutput | The console output from butterflow. | |
executablePath | Full pathname of the butterflow executable file. | |
interpreter | An input interpreter used for converting string values to numeric values. | |
isRunning | True if butterflow is running, false if not. | |
progressPercentage | The progress percentage as reported by butterflow. | |
REGEX_PROGRESS | The RegEx string for detecting progress made when rendering a video. | |
REGEX_PROGRESS_ALT | An alternative RegEx string for detecting progress made when rendering a video. | |
REGEX_RATE | The RegEx string for matching the probed playback rate. | |
REGEX_RESOLUTION | The RegEx string for matching probed resolution. | |
runningProcess | The running butterflow process. |
ButterflowWrapperRun Method (String) |
+ Namespace: + butterflow_ui
MainWindowmenuButterflowGithub_Click Method |
+ Namespace: + butterflow_ui
OptionsConfigurationToString Method |
+ Namespace: + butterflow_ui
OptionsConfigurationKeepSubregions Property |
+ Namespace: + butterflow_ui
MainWindow Constructor |
+ Namespace: + butterflow_ui
OptionsConfigurationlockAspectRatio Field |
+ Namespace: + butterflow_ui
ButterflowOutputArgs Properties |
The ButterflowWrapperButterflowOutputArgs type exposes the following members.
+ + | Name | Description |
---|---|---|
ConsoleOutput | Gets the console output. (Inherited from ButterflowWrapperButterflowConsoleOutputArgs.) | |
OutputType | Gets or sets the type of the output detected from butterflow. | |
Value | Gets or sets the value detected from butterflow. |
AboutWindow Methods |
The AboutWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
btnOK_Click | Event handler. Called by btnOK for click events. | |
Hyperlink_RequestNavigate | Event handler. Called by Hyperlink for request navigate events. | |
InitializeComponent |
+ InitializeComponent
+ |
ButterflowWrapperProcess_Exited Method |
+ Namespace: + butterflow_ui
MainWindowButterflowWrapper_ParsedConsoleOutputRecieved Method |
+ Namespace: + butterflow_ui
private void ButterflowWrapper_ParsedConsoleOutputRecieved( + Object sender, + ButterflowWrapperButterflowOutputArgs e +)
PropertyChangedAlerterOnPropertyChanged Method |
+ Namespace: + butterflow_ui
protected virtual void OnPropertyChanged( + [CallerMemberNameAttribute] string name = null +)
public bool SomeProperty +{ + get + { + return this.someProperty; + } + set + { + this.someProperty = value; + OnPropertyChanged(); + } +}
OptionsWindow Methods |
The OptionsWindow type exposes the following members.
+ + | Name | Description |
---|---|---|
btnSave_Click | Event handler. Called by btnSave for click events. | |
InitializeComponent |
+ InitializeComponent
+ |
OptionsConfigurationFilePlaybackRate Property |
+ Namespace: + butterflow_ui
App Constructor |
+ Namespace: + butterflow_ui
OptionsConfigurationFileSmoothMotion Property |
+ Namespace: + butterflow_ui
ButterflowWrapperREGEX_PROGRESS_ALT Field |
+ Namespace: + butterflow_ui
private const string REGEX_PROGRESS_ALT = "\<Rendering progress\:\s*(?<Progress>\d+\.*\d*)%\>"
OptionsWindowSupportedLanguages Property |
+ Namespace: + butterflow_ui
OptionsConfigurationFileKeepSubregions Property |
+ Namespace: + butterflow_ui
OptionsWindow_contentLoaded Field |
[Missing <summary> documentation for "F:butterflow_ui.OptionsWindow._contentLoaded"]
+ Namespace: + butterflow_ui
AboutWindowHyperlink_RequestNavigate Method |
+ Namespace: + butterflow_ui
private void Hyperlink_RequestNavigate( + Object sender, + RequestNavigateEventArgs e +)
PropertyChangedAlerterOnAllPropertiesChanged Method |
+ Namespace: + butterflow_ui
OptionsConfigurationaspectRatio Field |
+ Namespace: + butterflow_ui
MainWindowmenuSaveConfiguration Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.menuSaveConfiguration"]
+ Namespace: + butterflow_ui
MainWindowPlayPauseButtonIcon Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.PlayPauseButtonIcon"]
+ Namespace: + butterflow_ui
OptionsConfigurationwindowSize Field |
+ Namespace: + butterflow_ui
OptionsConfigurationsmoothDerivativeStandardDeviation Field |
+ Namespace: + butterflow_ui
MainWindowbtnProcess Field |
[Missing <summary> documentation for "F:butterflow_ui.MainWindow.btnProcess"]
+ Namespace: + butterflow_ui
ButterflowSubregion Methods |
The ButterflowSubregion type exposes the following members.
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. (Inherited from PropertyChangedAlerter.) | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. (Inherited from PropertyChangedAlerter.) | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ (Inherited from PropertyChangedAlerter.) |
ButterflowWrapper Class |
+ Namespace: + butterflow_ui
The ButterflowWrapper type exposes the following members.
+ + | Name | Description |
---|---|---|
ButterflowWrapper | Initializes a new instance of the ButterflowWrapper class |
+ + | Name | Description |
---|---|---|
ConsoleOutput | Gets the console output from butterflow. | |
IsRunning | Gets a value indicating whether butterflow is currently running. | |
ProgressPercentage | Gets the progress percentage as reported by butterflow. |
+ + | Name | Description |
---|---|---|
AddConstantCallProperty | Adds a property that will always be called when any property is updated.. (Inherited from PropertyChangedAlerter.) | |
Cancel | Kills the running instance of butterflow, cancelling its current operation. | |
OnAllPropertiesChanged | Executes when all properties are changed and should be updated. (Inherited from PropertyChangedAlerter.) | |
OnParsedConsoleOutputRecieved | Executes the parsed console output recieved action. | |
OnPropertyChanged |
+ Executes the property changed action. This alerts subscribers to its change in value.
+ (Inherited from PropertyChangedAlerter.) | |
ParseConsoleOutput |
+ Parses console output and attempts to find known values. If a known value is found, the
+ event is triggered.
+ | |
Probe | Probes a video file. | |
Process_Exited | Event handler. Called by Process for exited events. | |
Process_OutputDataReceived | Event handler. Called by Process for output data received events. | |
Run(String) | Runs butterflow with the given arguments. | |
Run(OptionsConfiguration) | Runs butterflow with the given optionsConfiguration. |
+ + | Name | Description |
---|---|---|
ParsedConsoleOutputRecieved | Event queue for all listeners interested in ParsedConsoleOutputRecieved events. | |
PropertyChanged | Occurs when a property value changes. (Inherited from PropertyChangedAlerter.) |
+ + | Name | Description |
---|---|---|
alwaysCall | A list of properties to always call as updated. Generally used for composite properties. (Inherited from PropertyChangedAlerter.) | |
consoleOutput | The console output from butterflow. | |
executablePath | Full pathname of the butterflow executable file. | |
interpreter | An input interpreter used for converting string values to numeric values. | |
isRunning | True if butterflow is running, false if not. | |
progressPercentage | The progress percentage as reported by butterflow. | |
REGEX_PROGRESS | The RegEx string for detecting progress made when rendering a video. | |
REGEX_PROGRESS_ALT | An alternative RegEx string for detecting progress made when rendering a video. | |
REGEX_RATE | The RegEx string for matching the probed playback rate. | |
REGEX_RESOLUTION | The RegEx string for matching probed resolution. | |
runningProcess | The running butterflow process. |
MainWindowbntVideoStop_Click Method |
+ Namespace: + butterflow_ui
OptionsConfigurationFileKeepAudio Property |
+ Namespace: + butterflow_ui
If you are not redirected automatically, follow this link to the default topic.
+ + diff --git a/docs/scripts/branding-Website.js b/docs/scripts/branding-Website.js new file mode 100644 index 0000000..dc31b27 --- /dev/null +++ b/docs/scripts/branding-Website.js @@ -0,0 +1,624 @@ +//=============================================================================================================== +// System : Sandcastle Help File Builder +// File : branding-Website.js +// Author : Eric Woodruff (Eric@EWoodruff.us) +// Updated : 03/04/2015 +// Note : Copyright 2014-2015, Eric Woodruff, All rights reserved +// Portions Copyright 2014 Sam Harwell, All rights reserved +// +// This file contains the methods necessary to implement the lightweight TOC and search functionality. +// +// This code is published under the Microsoft Public License (Ms-PL). A copy of the license should be +// distributed with the code. It can also be found at the project website: https://GitHub.com/EWSoftware/SHFB. This +// notice, the author's name, and all copyright notices must remain intact in all applications, documentation, +// and source files. +// +// Date Who Comments +// ============================================================================================================== +// 05/04/2014 EFW Created the code based on a combination of the lightweight TOC code from Sam Harwell and +// the existing search code from SHFB. +//=============================================================================================================== + +// Width of the TOC +var tocWidth; + +// Search method (0 = To be determined, 1 = ASPX, 2 = PHP, anything else = client-side script +var searchMethod = 0; + +// Table of contents script + +// Initialize the TOC by restoring its width from the cookie if present +function InitializeToc() +{ + tocWidth = parseInt(GetCookie("TocWidth", "280")); + ResizeToc(); + $(window).resize(SetNavHeight) +} + +function SetNavHeight() +{ + $leftNav = $("#leftNav") + $topicContent = $("#TopicContent") + leftNavPadding = $leftNav.outerHeight() - $leftNav.height() + contentPadding = $topicContent.outerHeight() - $topicContent.height() + // want outer height of left navigation div to match outer height of content + leftNavHeight = $topicContent.outerHeight() - leftNavPadding + $leftNav.css("min-height", leftNavHeight + "px") +} + +// Increase the TOC width +function OnIncreaseToc() +{ + if(tocWidth < 1) + tocWidth = 280; + else + tocWidth += 100; + + if(tocWidth > 680) + tocWidth = 0; + + ResizeToc(); + SetCookie("TocWidth", tocWidth); +} + +// Reset the TOC to its default width +function OnResetToc() +{ + tocWidth = 0; + + ResizeToc(); + SetCookie("TocWidth", tocWidth); +} + +// Resize the TOC width +function ResizeToc() +{ + var toc = document.getElementById("leftNav"); + + if(toc) + { + // Set TOC width + toc.style.width = tocWidth + "px"; + + var leftNavPadding = 10; + + document.getElementById("TopicContent").style.marginLeft = (tocWidth + leftNavPadding) + "px"; + + // Position images + document.getElementById("TocResize").style.left = (tocWidth + leftNavPadding) + "px"; + + // Hide/show increase TOC width image + document.getElementById("ResizeImageIncrease").style.display = (tocWidth >= 680) ? "none" : ""; + + // Hide/show reset TOC width image + document.getElementById("ResizeImageReset").style.display = (tocWidth < 680) ? "none" : ""; + } + + SetNavHeight() +} + +// Toggle a TOC entry between its collapsed and expanded state +function Toggle(item) +{ + var isExpanded = $(item).hasClass("tocExpanded"); + + $(item).toggleClass("tocExpanded tocCollapsed"); + + if(isExpanded) + { + Collapse($(item).parent()); + } + else + { + var childrenLoaded = $(item).parent().attr("data-childrenloaded"); + + if(childrenLoaded) + { + Expand($(item).parent()); + } + else + { + var tocid = $(item).next().attr("tocid"); + + $.ajax({ + url: "../toc/" + tocid + ".xml", + async: true, + dataType: "xml", + success: function(data) + { + BuildChildren($(item).parent(), data); + } + }); + } + } +} + +// HTML encode a value for use on the page +function HtmlEncode(value) +{ + // Create an in-memory div, set it's inner text (which jQuery automatically encodes) then grab the encoded + // contents back out. The div never exists on the page. + return $('').text(value).html(); +} + +// Build the child entries of a TOC entry +function BuildChildren(tocDiv, data) +{ + var childLevel = +tocDiv.attr("data-toclevel") + 1; + var childTocLevel = childLevel >= 10 ? 10 : childLevel; + var elements = data.getElementsByTagName("HelpTOCNode"); + + var isRoot = true; + + if(data.getElementsByTagName("HelpTOC").length == 0) + { + // The first node is the root node of this group, don't show it again + isRoot = false; + } + + for(var i = elements.length - 1; i > 0 || (isRoot && i == 0); i--) + { + var childHRef, childId = elements[i].getAttribute("Url"); + + if(childId != null && childId.length > 5) + { + // The Url attribute has the form "html/{childId}.htm" + childHRef = "../" + childId; + childId = childId.substring(childId.lastIndexOf("/") + 1, childId.lastIndexOf(".")); + } + else + { + // The Id attribute is in raw form. There is no URL (empty container node). In this case, we'll + // just ignore it and go nowhere. It's a rare case that isn't worth trying to get the first child. + // Instead, we'll just expand the node (see below). + childHRef = "#"; + childId = elements[i].getAttribute("Id"); + } + + var existingItem = null; + + tocDiv.nextAll().each(function() + { + if(!existingItem && $(this).children().last("a").attr("tocid") == childId) + { + existingItem = $(this); + } + }); + + if(existingItem != null) + { + // First move the children of the existing item + var existingChildLevel = +existingItem.attr("data-toclevel"); + var doneMoving = false; + var inserter = tocDiv; + + existingItem.nextAll().each(function() + { + if(!doneMoving && +$(this).attr("data-toclevel") > existingChildLevel) + { + inserter.after($(this)); + inserter = $(this); + $(this).attr("data-toclevel", +$(this).attr("data-toclevel") + childLevel - existingChildLevel); + + if($(this).hasClass("current")) + $(this).attr("class", "toclevel" + (+$(this).attr("data-toclevel") + " current")); + else + $(this).attr("class", "toclevel" + (+$(this).attr("data-toclevel"))); + } + else + { + doneMoving = true; + } + }); + + // Now move the existing item itself + tocDiv.after(existingItem); + existingItem.attr("data-toclevel", childLevel); + existingItem.attr("class", "toclevel" + childLevel); + } + else + { + var hasChildren = elements[i].getAttribute("HasChildren"); + var childTitle = HtmlEncode(elements[i].getAttribute("Title")); + var expander = ""; + + if(hasChildren) + expander = ""; + + var text = "Omitted " + (matchingFileIndices.length - rankings.length) + " more results
"; + + return content; +} diff --git a/docs/scripts/branding.js b/docs/scripts/branding.js new file mode 100644 index 0000000..2acdea5 --- /dev/null +++ b/docs/scripts/branding.js @@ -0,0 +1,562 @@ +//=============================================================================================================== +// System : Sandcastle Help File Builder +// File : branding.js +// Author : Eric Woodruff (Eric@EWoodruff.us) +// Updated : 10/08/2015 +// Note : Copyright 2014-2015, Eric Woodruff, All rights reserved +// Portions Copyright 2010-2014 Microsoft, All rights reserved +// +// This file contains the methods necessary to implement the language filtering, collapsible section, and +// copy to clipboard options. +// +// This code is published under the Microsoft Public License (Ms-PL). A copy of the license should be +// distributed with the code and can be found at the project website: https://GitHub.com/EWSoftware/SHFB. This +// notice, the author's name, and all copyright notices must remain intact in all applications, documentation, +// and source files. +// +// Date Who Comments +// ============================================================================================================== +// 05/04/2014 EFW Created the code based on the MS Help Viewer script +//=============================================================================================================== + +// The IDs of all code snippet sets on the same page are stored so that we can keep them in synch when a tab is +// selected. +var allTabSetIds = new Array(); + +// The IDs of language-specific text (LST) spans are used as dictionary keys so that we can get access to the +// spans and update them when the user changes to a different language tab. The values of the dictionary +// objects are pipe separated language-specific attributes (lang1=value|lang2=value|lang3=value). The language +// ID can be specific (cs, vb, cpp, etc.) or may be a neutral entry (nu) which specifies text common to multiple +// languages. If a language is not present and there is no neutral entry, the span is hidden for all languages +// to which it does not apply. +var allLSTSetIds = new Object(); + +// Help 1 persistence support. This code must appear inline. +var isHelp1; + +var curLoc = document.location + "."; + +if(curLoc.indexOf("mk:@MSITStore") == 0) +{ + isHelp1 = true; + curLoc = "ms-its:" + curLoc.substring(14, curLoc.length - 1); + document.location.replace(curLoc); +} +else + if(curLoc.indexOf("ms-its:") == 0) + isHelp1 = true; + else + isHelp1 = false; + +// The OnLoad method +function OnLoad(defaultLanguage) +{ + var defLang; + + if(typeof (defaultLanguage) == "undefined" || defaultLanguage == null || defaultLanguage == "") + defLang = "vb"; + else + defLang = defaultLanguage; + + // In MS Help Viewer, the transform the topic is ran through can move the footer. Move it back where it + // belongs if necessary. + try + { + var footer = document.getElementById("pageFooter") + + if(footer) + { + var footerParent = document.body; + + if(footer.parentElement != footerParent) + { + footer.parentElement.removeChild(footer); + footerParent.appendChild(footer); + } + } + } + catch(e) + { + } + + var language = GetCookie("CodeSnippetContainerLanguage", defLang); + + // If LST exists on the page, set the LST to show the user selected programming language + UpdateLST(language); + + // If code snippet groups exist, set the current language for them + if(allTabSetIds.length > 0) + { + var i = 0; + + while(i < allTabSetIds.length) + { + var tabCount = 1; + + // The tab count may vary so find the last one in this set + while(document.getElementById(allTabSetIds[i] + "_tab" + tabCount) != null) + tabCount++; + + tabCount--; + + // If not grouped, skip it + if(tabCount > 1) + SetCurrentLanguage(allTabSetIds[i], language, tabCount); + + i++; + } + } + + InitializeToc(); +} + +// This is just a place holder. The website script implements this function to initialize it's in-page TOC pane +function InitializeToc() +{ +} + +// This function executes in the OnLoad event and ChangeTab action on code snippets. The function parameter +// is the user chosen programming language. This function iterates through the "allLSTSetIds" dictionary object +// to update the node value of the LST span tag per the user's chosen programming language. +function UpdateLST(language) +{ + for(var lstMember in allLSTSetIds) + { + var devLangSpan = document.getElementById(lstMember); + + if(devLangSpan != null) + { + // There may be a carriage return before the LST span in the content so the replace function below + // is used to trim the whitespace at the end of the previous node of the current LST node. + if(devLangSpan.previousSibling != null && devLangSpan.previousSibling.nodeValue != null) + devLangSpan.previousSibling.nodeValue = devLangSpan.previousSibling.nodeValue.replace(/\s+$/, ""); + + var langs = allLSTSetIds[lstMember].split("|"); + var k = 0; + var keyValue; + + while(k < langs.length) + { + keyValue = langs[k].split("="); + + if(keyValue[0] == language) + { + devLangSpan.innerHTML = keyValue[1]; + + // Help 1 and MS Help Viewer workaround. Add a space if the following text element starts + // with a space to prevent things running together. + if(devLangSpan.parentNode != null && devLangSpan.parentNode.nextSibling != null) + { + if(devLangSpan.parentNode.nextSibling.nodeValue != null && + !devLangSpan.parentNode.nextSibling.nodeValue.substring(0, 1).match(/[.,);:!/?]/) && + (isHelp1 || devLangSpan.innerHTML == '>' || devLangSpan.innerHTML == ')')) + { + devLangSpan.innerHTML = keyValue[1] + " "; + } + } + break; + } + + k++; + } + + // If not found, default to the neutral language. If there is no neutral language entry, clear the + // content to hide it. + if(k >= langs.length) + { + if(language != "nu") + { + k = 0; + + while(k < langs.length) + { + keyValue = langs[k].split("="); + + if(keyValue[0] == "nu") + { + devLangSpan.innerHTML = keyValue[1]; + + // Help 1 and MS Help Viewer workaround. Add a space if the following text element + // starts with a space to prevent things running together. + if(devLangSpan.parentNode != null && devLangSpan.parentNode.nextSibling != null) + { + if(devLangSpan.parentNode.nextSibling.nodeValue != null && + !devLangSpan.parentNode.nextSibling.nodeValue.substring(0, 1).match(/[.,);:!/?]/) && + (isHelp1 || devLangSpan.innerHTML == '>' || devLangSpan.innerHTML == ')')) + { + devLangSpan.innerHTML = keyValue[1] + " "; + } + } + break; + } + + k++; + } + } + + if(k >= langs.length) + devLangSpan.innerHTML = ""; + } + } + } +} + +// Get the specified cookie. If not found, return the specified default value. +function GetCookie(cookieName, defaultValue) +{ + if(isHelp1) + { + try + { + var globals = Help1Globals; + + var value = globals.Load(cookieName); + + if(value == null) + value = defaultValue; + + return value; + } + catch(e) + { + return defaultValue; + } + } + + var cookie = document.cookie.split("; "); + + for(var i = 0; i < cookie.length; i++) + { + var crumb = cookie[i].split("="); + + if(cookieName == crumb[0]) + return unescape(crumb[1]) + } + + return defaultValue; +} + +// Set the specified cookie to the specified value +function SetCookie(name, value) +{ + if(isHelp1) + { + try + { + var globals = Help1Globals; + + globals.Save(name, value); + } + catch(e) + { + } + + return; + } + + var today = new Date(); + + today.setTime(today.getTime()); + + // Set the expiration time to be 60 days from now (in milliseconds) + var expires_date = new Date(today.getTime() + (60 * 1000 * 60 * 60 * 24)); + + document.cookie = name + "=" + escape(value) + ";expires=" + expires_date.toGMTString() + ";path=/"; +} + +// Add a language-specific text ID +function AddLanguageSpecificTextSet(lstId) +{ + var keyValue = lstId.split("?") + + allLSTSetIds[keyValue[0]] = keyValue[1]; +} + +var clipboardHandler; + +// Add a language tab set ID +function AddLanguageTabSet(tabSetId) +{ + allTabSetIds.push(tabSetId); + + // Create the clipboard handler on first use + if(clipboardHandler == null && typeof (Clipboard) == "function") + { + clipboardHandler = new Clipboard('.copyCodeSnippet', + { + text: function (trigger) + { + // Get the code to copy to the clipboard from the active tab of the given tab set + var i = 1, tabSetId = trigger.id; + var pos = tabSetId.indexOf('_'); + + if(pos == -1) + return ""; + + tabSetId = tabSetId.substring(0, pos); + + do + { + contentId = tabSetId + "_code_Div" + i; + tabTemp = document.getElementById(contentId); + + if(tabTemp != null && tabTemp.style.display != "none") + break; + + i++; + + } while(tabTemp != null); + + if(tabTemp == null) + return ""; + + return document.getElementById(contentId).innerText; + } + }); + } +} + +// Switch the active tab for all of other code snippets +function ChangeTab(tabSetId, language, snippetIdx, snippetCount) +{ + SetCookie("CodeSnippetContainerLanguage", language); + + SetActiveTab(tabSetId, snippetIdx, snippetCount); + + // If LST exists on the page, set the LST to show the user selected programming language + UpdateLST(language); + + var i = 0; + + while(i < allTabSetIds.length) + { + // We just care about other snippets + if(allTabSetIds[i] != tabSetId) + { + // Other tab sets may not have the same number of tabs + var tabCount = 1; + + while(document.getElementById(allTabSetIds[i] + "_tab" + tabCount) != null) + tabCount++; + + tabCount--; + + // If not grouped, skip it + if(tabCount > 1) + SetCurrentLanguage(allTabSetIds[i], language, tabCount); + } + + i++; + } +} + +// Sets the current language in the specified tab set +function SetCurrentLanguage(tabSetId, language, tabCount) +{ + var tabIndex = 1; + + while(tabIndex <= tabCount) + { + var tabTemp = document.getElementById(tabSetId + "_tab" + tabIndex); + + if(tabTemp != null && tabTemp.innerHTML.indexOf("'" + language + "'") != -1) + break; + + tabIndex++; + } + + if(tabIndex > tabCount) + { + // Select the first non-disabled tab + tabIndex = 1; + + if(document.getElementById(tabSetId + "_tab1").className == "codeSnippetContainerTabPhantom") + { + tabIndex++; + + while(tabIndex <= tabCount) + { + var tab = document.getElementById(tabSetId + "_tab" + tabIndex); + + if(tab.className != "codeSnippetContainerTabPhantom") + { + tab.className = "codeSnippetContainerTabActive"; + document.getElementById(tabSetId + "_code_Div" + j).style.display = "block"; + break; + } + + tabIndex++; + } + } + } + + SetActiveTab(tabSetId, tabIndex, tabCount); +} + +// Set the active tab within a tab set +function SetActiveTab(tabSetId, tabIndex, tabCount) +{ + var i = 1; + + while(i <= tabCount) + { + var tabTemp = document.getElementById(tabSetId + "_tab" + i); + + if (tabTemp != null) + { + if(tabTemp.className == "codeSnippetContainerTabActive") + tabTemp.className = "codeSnippetContainerTab"; + else + if(tabTemp.className == "codeSnippetContainerTabPhantom") + tabTemp.style.display = "none"; + + var codeTemp = document.getElementById(tabSetId + "_code_Div" + i); + + if(codeTemp.style.display != "none") + codeTemp.style.display = "none"; + } + + i++; + } + + // Phantom tabs are shown or hidden as needed + if(document.getElementById(tabSetId + "_tab" + tabIndex).className != "codeSnippetContainerTabPhantom") + document.getElementById(tabSetId + "_tab" + tabIndex).className = "codeSnippetContainerTabActive"; + else + document.getElementById(tabSetId + "_tab" + tabIndex).style.display = "block"; + + document.getElementById(tabSetId + "_code_Div" + tabIndex).style.display = "block"; +} + +// Copy the code from the active tab of the given tab set to the clipboard +function CopyToClipboard(tabSetId) +{ + var tabTemp, contentId; + var i = 1; + + if(typeof (Clipboard) == "function") + return; + + do + { + contentId = tabSetId + "_code_Div" + i; + tabTemp = document.getElementById(contentId); + + if(tabTemp != null && tabTemp.style.display != "none") + break; + + i++; + + } while(tabTemp != null); + + if(tabTemp == null) + return; + + if(window.clipboardData) + { + try + { + window.clipboardData.setData("Text", document.getElementById(contentId).innerText); + } + catch(e) + { + alert("Permission denied. Enable copying to the clipboard."); + } + } + else if(window.netscape) + { + try + { + netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); + + var clip = Components.classes["@mozilla.org/widget/clipboard;1"].createInstance( + Components.interfaces.nsIClipboard); + + if(!clip) + return; + + var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance( + Components.interfaces.nsITransferable); + + if(!trans) + return; + + trans.addDataFlavor("text/unicode"); + + var str = new Object(); + var len = new Object(); + var str = Components.classes["@mozilla.org/supports-string;1"].createInstance( + Components.interfaces.nsISupportsString); + + var copytext = document.getElementById(contentId).textContent; + + str.data = copytext; + trans.setTransferData("text/unicode", str, copytext.length * 2); + + var clipid = Components.interfaces.nsIClipboard; + + clip.setData(trans, null, clipid.kGlobalClipboard); + } + catch(e) + { + alert("Permission denied. Enter \"about:config\" in the address bar and double-click the \"signed.applets.codebase_principal_support\" setting to enable copying to the clipboard."); + } + } +} + +// Expand or collapse a section +function SectionExpandCollapse(togglePrefix) +{ + var image = document.getElementById(togglePrefix + "Toggle"); + var section = document.getElementById(togglePrefix + "Section"); + + if(image != null && section != null) + if(section.style.display == "") + { + image.src = image.src.replace("SectionExpanded.png", "SectionCollapsed.png"); + section.style.display = "none"; + } + else + { + image.src = image.src.replace("SectionCollapsed.png", "SectionExpanded.png"); + section.style.display = ""; + } +} + +// Expand or collapse a section when it has the focus and Enter is hit +function SectionExpandCollapse_CheckKey(togglePrefix, eventArgs) +{ + if(eventArgs.keyCode == 13) + SectionExpandCollapse(togglePrefix); +} + +// Help 1 persistence object. This requires a hidden input element on the page with a class of "userDataStyle" +// defined in the style sheet that implements the user data binary behavior: +// +var Help1Globals = +{ + UserDataCache: function() + { + var userData = document.getElementById("userDataCache"); + + return userData; + }, + + Load: function(key) + { + var userData = this.UserDataCache(); + + userData.load("userDataSettings"); + + var value = userData.getAttribute(key); + + return value; + }, + + Save: function(key, value) + { + var userData = this.UserDataCache(); + userData.setAttribute(key, value); + userData.save("userDataSettings"); + } +}; diff --git a/docs/scripts/clipboard.min.js b/docs/scripts/clipboard.min.js new file mode 100644 index 0000000..580433f --- /dev/null +++ b/docs/scripts/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v1.5.12 + * https://zenorocha.github.io/clipboard.js + * + * Licensed MIT © Zeno Rocha + */ +!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var e;e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,e.Clipboard=t()}}(function(){var t,e,n;return function t(e,n,o){function i(a,c){if(!n[a]){if(!e[a]){var s="function"==typeof require&&require;if(!c&&s)return s(a,!0);if(r)return r(a,!0);var l=new Error("Cannot find module '"+a+"'");throw l.code="MODULE_NOT_FOUND",l}var u=n[a]={exports:{}};e[a][0].call(u.exports,function(t){var n=e[a][1][t];return i(n?n:t)},u,u.exports,t,e,n,o)}return n[a].exports}for(var r="function"==typeof require&&require,a=0;at |