aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/Threading/IDispatcherProvider.cs
blob: 229d0d02b90728b759bebeb923a7a6720fac686f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Tango.PPC.Common.Threading
{
    /// <summary>
    /// Represents a mechanism for invoking actions on the main application thread.
    /// </summary>
    public interface IDispatcherProvider
    {
        /// <summary>
        /// Invokes the specified action asynchronously.
        /// </summary>
        /// <param name="action">The action.</param>
        void Invoke(Action action);

        /// <summary>
        /// Invokes the specified action synchronously.
        /// </summary>
        /// <param name="action">The action.</param>
        void InvokeBlock(Action action);
    }
}
entAlignment="Top" HorizontalContentAlignment="Left" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" /> <ControlTemplate.Triggers> <Trigger Property="WordWrap" Value="True"> <Setter TargetName="PART_ScrollViewer" Property="HorizontalScrollBarVisibility" Value="Disabled" /> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> <Style TargetType="{x:Type editing:TextArea}"> <Setter Property="FocusVisualStyle" Value="{x:Null}"/> <Setter Property="SelectionBrush"> <Setter.Value> <SolidColorBrush Color="{DynamicResource {x:Static SystemColors.HighlightColorKey}}" Opacity="0.7"/> </Setter.Value> </Setter> <Setter Property="SelectionBorder"> <Setter.Value> <Pen Brush="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" Thickness="1"/> </Setter.Value> </Setter> <Setter Property="SelectionForeground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type editing:TextArea}"> <DockPanel Focusable="False"> <ItemsControl DockPanel.Dock="Left" Focusable="False" ItemsSource="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=LeftMargins}"> <ItemsControl.ItemsPanel> <ItemsPanelTemplate> <StackPanel Orientation="Horizontal" /> </ItemsPanelTemplate> </ItemsControl.ItemsPanel> </ItemsControl> <ContentPresenter Panel.ZIndex="-1" Focusable="False" Content="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TextView}"/> </DockPanel> </ControlTemplate> </Setter.Value> </Setter> </Style> </ResourceDictionary>