Changeset 2119


Ignore:
Timestamp:
Nov 21, 2010, 7:13:22 PM (11 years ago)
Author:
matkovic
Message:

-DataPresentation redesigned
-Usability improved

Location:
trunk/CrypPlugins/WorkspaceManager
Files:
2 added
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/WorkspaceManager/View/Container/ConnectorView.xaml

    r2067 r2119  
    4141            </Grid>
    4242        </Popup>-->
    43         <Path Name="ConnectorRep" Margin="1,1,1,1" Fill="Black" Stretch="Fill" Stroke="#373e43" StrokeThickness="1" Width="10" Height="15" Data="M18,154.45381 L29.999666,187.66699 40.791059,154.54395 16.89,154.54395 L29.999666,187.66699">
    44             <Path.LayoutTransform>
    45                 <TransformGroup>
    46                     <ScaleTransform x:Name="Scale"></ScaleTransform>
    47                     <RotateTransform x:Name="Rotation"></RotateTransform>
    48                 </TransformGroup>
    49             </Path.LayoutTransform>
    50         </Path>
     43        <Grid>
     44            <Path Name="ConnectorRep" Margin="1,1,1,1" Fill="Black" Stretch="Fill" HorizontalAlignment="Center" Panel.ZIndex="100" VerticalAlignment="Center" Stroke="#373e43" StrokeThickness="1" Width="10" Height="15" Data="M18,154.45381 L29.999666,187.66699 40.791059,154.54395 16.89,154.54395 L29.999666,187.66699">
     45                <Path.LayoutTransform>
     46                    <TransformGroup>
     47                        <ScaleTransform x:Name="Scale"></ScaleTransform>
     48                        <RotateTransform x:Name="Rotation"></RotateTransform>
     49                    </TransformGroup>
     50                </Path.LayoutTransform>
     51            </Path>
     52            <Path Name="Bold" Margin="1,1,1,1" Fill="Black" Stretch="Fill" Stroke="#373e43" StrokeThickness="1" Width="10" Height="15" Data="M18,154.45381 L29.999666,187.66699 40.791059,154.54395 16.89,154.54395 L29.999666,187.66699">
     53                <Path.LayoutTransform>
     54                    <TransformGroup>
     55                        <ScaleTransform x:Name="ScaleBold"></ScaleTransform>
     56                        <RotateTransform Angle="{Binding ElementName=Rotation, Path=Angle}"></RotateTransform>
     57                    </TransformGroup>
     58
     59                </Path.LayoutTransform>
     60            </Path>
     61        </Grid>
    5162    </Border>
    5263</UserControl>
  • trunk/CrypPlugins/WorkspaceManager/View/Container/ConnectorView.xaml.cs

    r2118 r2119  
    9898
    9999            if (Model.IsMandatory)
    100                 ConnectorRep.Stroke = Brushes.OrangeRed;
     100            {
     101                ConnectorRep.Stroke = Brushes.White;
     102                Scale.ScaleX = 0.8;
     103                Scale.ScaleY = 0.7;
     104            }
    101105
    102106            if (Model.Orientation == ConnectorOrientation.Unset)
     
    117121        public Point GetPositionOnWorkspace()
    118122        {
    119             GeneralTransform gTransform, gTransformSec;
    120             Point point, relativePoint;
    121             StackPanel currentSp = null;
    122 
    123             if (Parent.West.Children.Contains(this))
    124                 currentSp = Parent.West;
    125             if (Parent.East.Children.Contains(this))
    126                 currentSp = Parent.East;
    127             if (Parent.North.Children.Contains(this))
    128                 currentSp = Parent.North;
    129             if (Parent.South.Children.Contains(this))
    130                 currentSp = Parent.South;
    131 
    132             gTransform = currentSp.TransformToVisual(Parent);
    133             gTransformSec = this.TransformToVisual(currentSp);
    134 
    135             point = gTransform.Transform(new Point(0, 0));
    136             relativePoint = gTransformSec.Transform(new Point(0, 0));
    137             Point result = new Point(Parent.GetPosition().X + point.X + relativePoint.X, Parent.GetPosition().Y + point.Y + relativePoint.Y);
    138             return result;
     123            try
     124            {
     125                GeneralTransform gTransform, gTransformSec;
     126                Point point, relativePoint;
     127                StackPanel currentSp = null;
     128
     129                if (Parent.West.Children.Contains(this))
     130                    currentSp = Parent.West;
     131                if (Parent.East.Children.Contains(this))
     132                    currentSp = Parent.East;
     133                if (Parent.North.Children.Contains(this))
     134                    currentSp = Parent.North;
     135                if (Parent.South.Children.Contains(this))
     136                    currentSp = Parent.South;
     137
     138                gTransform = currentSp.TransformToVisual(Parent);
     139                gTransformSec = this.TransformToVisual(currentSp);
     140
     141                point = gTransform.Transform(new Point(0, 0));
     142                relativePoint = gTransformSec.Transform(new Point(0, 0));
     143                Point result = new Point(Parent.GetPosition().X + point.X + relativePoint.X, Parent.GetPosition().Y + point.Y + relativePoint.Y);
     144                return result;
     145            }
     146            catch (Exception)
     147            {
     148                return new Point(0, 0);
     149            }
    139150        }
    140151
  • trunk/CrypPlugins/WorkspaceManager/View/Container/PluginContainerView.xaml

    r2118 r2119  
    2323            <z:ConnectorPanelHeightWidthConverter x:Key="ConnectorPanelHeightWidthConverter"></z:ConnectorPanelHeightWidthConverter>
    2424            <z:CaptionWidthConverter x:Key="CaptionWidthConverter"></z:CaptionWidthConverter>
     25            <z:ViewStateCaptionConverter x:Key="ViewStateCaptionConverter"></z:ViewStateCaptionConverter>
    2526
    2627            <Button x:Key="SettingButton" Name="SettingButton" ToolTip="Settings" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Height="30" Width="30" MouseEnter="SettingButton_MouseEnter" Click="OptionChooseHandler">
     
    5657    <DockPanel Name="Root" LastChildFill="True">
    5758
    58         <DockPanel x:Name="PluginBase" DockPanel.Dock="Top" HorizontalAlignment="Left" MinHeight="130" MinWidth="130" Width="130" Height="130">
     59        <DockPanel x:Name="PluginBase" DockPanel.Dock="Top" HorizontalAlignment="Left" MinHeight="125" MinWidth="125" Width="125" Height="125">
    5960            <DockPanel.Background>
    6061                <SolidColorBrush Opacity="0.01" Color="#444444"></SolidColorBrush>
     
    137138                    </StackPanel>
    138139
    139                     <Thumb Panel.ZIndex="2000" Name="BottomRightDelta" Visibility="{Binding Path=ViewState, Converter={StaticResource ResourceKey=DragDeltaViewStateConverter}, ConverterParameter=Visibility}" Style="{StaticResource ResourceKey=ImageWrapperThumbStyle}" IsEnabled="{Binding Path=ViewState, Converter={StaticResource ResourceKey=DragDeltaViewStateConverter}, ConverterParameter=IsEnabled}" Background="Transparent" Opacity="0.6" HorizontalAlignment="Right" VerticalAlignment="Bottom" Cursor="SizeNWSE" Height="15" Width="15" DragDelta="Thumb_DragDelta" Margin="0,0,19,19"></Thumb>
     140                    <Thumb Panel.ZIndex="2000" Name="BottomRightDelta" Visibility="{Binding Path=ViewState, Converter={StaticResource ResourceKey=DragDeltaViewStateConverter}, ConverterParameter=Visibility}" Style="{StaticResource ResourceKey=ImageWrapperThumbStyle}" IsEnabled="{Binding Path=ViewState, Converter={StaticResource ResourceKey=DragDeltaViewStateConverter}, ConverterParameter=IsEnabled}" Background="Transparent" Opacity="0.6" HorizontalAlignment="Right" VerticalAlignment="Bottom" Cursor="SizeNWSE" Height="15" Width="15" DragDelta="Thumb_DragDelta" Margin="0,0,25,25"></Thumb>
    140141                </Grid>
    141142                <Grid Margin="3">
     
    192193                                                        </Grid.Background>
    193194                                                        <DockPanel x:Name="WindowBar">
    194                                                             <StackPanel DockPanel.Dock="Right" Name="ControlPanel" Visibility="Visible" Opacity="1" Orientation="Horizontal" HorizontalAlignment="Right" Margin="3">
    195 
    196                                                                 <Button x:Name="play" Height="20" Width="20"  VerticalAlignment="Bottom" HorizontalAlignment="Left" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Click="Button_Click">
     195                                                            <StackPanel DockPanel.Dock="Right" Name="ControlPanel" Visibility="Visible" Opacity="1" Orientation="Horizontal" HorizontalAlignment="Right" Margin="0">
     196
     197                                                                <Button x:Name="play" Height="19" Width="20"  VerticalAlignment="Bottom" HorizontalAlignment="Left" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Click="Button_Click">
    197198                                                                    <Button.LayoutTransform>
    198199                                                                        <ScaleTransform ScaleX="0.8" ScaleY="0.8"></ScaleTransform>
    199200                                                                    </Button.LayoutTransform>
    200                                                                     <Image x:Name="playimg" Source="/WorkspaceManager;component/View/Image/play.png" RenderOptions.ClearTypeHint="Enabled" HorizontalAlignment="Center" SnapsToDevicePixels="True" Margin="1,1,1,1"/>
     201                                                                    <Image x:Name="playimg" Source="/WorkspaceManager;component/View/Image/play.png" RenderOptions.ClearTypeHint="Enabled" HorizontalAlignment="Left" SnapsToDevicePixels="True" Margin="1,1,1,1"/>
    201202                                                                </Button>
    202203
    203                                                                 <Button Name="MinimizeButton" Height="20" Width="20" ToolTip="Minimize" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Click="OptionChooseHandler">
     204                                                                <Button Name="MinimizeButton" Height="19" Width="20" ToolTip="Minimize" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Click="OptionChooseHandler">
    204205                                                                    <Button.LayoutTransform>
    205206                                                                        <ScaleTransform ScaleX="0.8" ScaleY="0.8"></ScaleTransform>
    206207                                                                    </Button.LayoutTransform>
    207                                                                     <Image Source="{Binding Path=ViewState, Converter={StaticResource ResourceKey=ViewStateIconConverter}}" HorizontalAlignment="Center" SnapsToDevicePixels="True">
     208                                                                    <Image Source="{Binding Path=ViewState, Converter={StaticResource ResourceKey=ViewStateIconConverter}}" HorizontalAlignment="Left" SnapsToDevicePixels="True">
    208209                                                                        <Image.Effect>
    209210                                                                            <DropShadowEffect Color="Black" ShadowDepth="0"></DropShadowEffect>
     
    212213                                                                </Button>
    213214
    214                                                                 <Button x:Name="del" Height="20" Width="20" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Click="Button_Click">
     215                                                                <Button x:Name="del" Height="19" Width="20" Style="{StaticResource ResourceKey=BottomBoxBtnStyle}" Click="Button_Click">
    215216                                                                    <Button.LayoutTransform>
    216217                                                                        <ScaleTransform ScaleX="0.8" ScaleY="0.8"></ScaleTransform>
     
    246247                                                                    </Border.Background>
    247248
    248                                                                     <TextBlock Name="OptionCaption" Foreground="WhiteSmoke" FontWeight="Bold" FontSize="8" HorizontalAlignment="Center" Margin="0,0,10,0">
     249                                                                    <TextBlock Name="OptionCaption" Foreground="WhiteSmoke" FontWeight="Bold" FontSize="9" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="0,0,10,0" Text="{Binding Path=ViewState, Converter={StaticResource ResourceKey=ViewStateCaptionConverter}}">
    249250                                                                        <TextBlock.RenderTransform>
    250251                                                                            <ScaleTransform ScaleX="1.2" ScaleY="1.2"></ScaleTransform>
     
    314315                                                                    <e:LogPresentation></e:LogPresentation>
    315316                                                                </Border>
    316                                                                 <ScrollViewer Panel.ZIndex="{Binding Path=ViewState, Converter={StaticResource ResourceKey=OverlapConverter}, ConverterParameter=DataPanel}" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
    317                                                                     <StackPanel Orientation="Vertical" x:Name="DataPanel" Visibility="{Binding Path=ViewState, Converter={StaticResource ResourceKey=ViewStateConverter}, ConverterParameter=DataPanel}"></StackPanel>
    318                                                                 </ScrollViewer>
     317                                                                <Border Panel.ZIndex="{Binding Path=ViewState, Converter={StaticResource ResourceKey=OverlapConverter}, ConverterParameter=DataPanel}">
     318                                                                    <Grid x:Name="DataPanel" Visibility="{Binding Path=ViewState, Converter={StaticResource ResourceKey=ViewStateConverter}, ConverterParameter=DataPanel}"></Grid>
     319                                                                </Border>
    319320                                                            </Grid>
    320321                                                        </Grid>
  • trunk/CrypPlugins/WorkspaceManager/View/Container/PluginContainerView.xaml.cs

    r2118 r2119  
    5454        #region Properties
    5555
    56         public static readonly DependencyProperty X = DependencyProperty.Register("PositionOnWorkSpaceX", typeof(double), typeof(ConnectorView), new FrameworkPropertyMetadata(0.0, FrameworkPropertyMetadataOptions.AffectsRender | FrameworkPropertyMetadataOptions.AffectsMeasure));
    57         public static readonly DependencyProperty Y = DependencyProperty.Register("PositionOnWorkSpaceY", typeof(double), typeof(ConnectorView), new FrameworkPropertyMetadata(0.0, FrameworkPropertyMetadataOptions.AffectsRender | FrameworkPropertyMetadataOptions.AffectsMeasure));
     56        public static readonly DependencyProperty X = DependencyProperty.Register("PositionOnWorkSpaceX", typeof(double), typeof(PluginContainerView), new FrameworkPropertyMetadata(0.0, FrameworkPropertyMetadataOptions.AffectsRender | FrameworkPropertyMetadataOptions.AffectsMeasure));
     57        public static readonly DependencyProperty Y = DependencyProperty.Register("PositionOnWorkSpaceY", typeof(double), typeof(PluginContainerView), new FrameworkPropertyMetadata(0.0, FrameworkPropertyMetadataOptions.AffectsRender | FrameworkPropertyMetadataOptions.AffectsMeasure));
    5858
    5959        [TypeConverter(typeof(LengthConverter))]
     
    262262                ConnectorView connector = new ConnectorView(ConnectorModel, this);
    263263                AddConnectorView(connector);
    264                 DataPanel.Children.Add(new DataPresentation(connector));
    265264            }
    266265
     
    269268                ConnectorView connector = new ConnectorView(ConnectorModel, this);
    270269                AddConnectorView(connector);
    271                 DataPanel.Children.Add(new DataPresentation(connector));
    272             }
     270            }
     271
     272            DataPanel.Children.Add(new DataPresentation(connectorViewList));
    273273            this.ViewState = Model.ViewState;
    274274        }
     
    696696            ProgressBar.Value = Model.PercentageFinished;
    697697
    698             if (ViewState == PluginViewState.Data)
    699             {
    700                 foreach (UIElement element in DataPanel.Children)
    701                 {
    702                     DataPresentation data = element as DataPresentation;
    703                     data.update();
    704                 }
    705             }
    706 
    707698            if (Model.GuiLogEvents.Count != 0)
    708699            {
     
    793784        private void SettingButton_MouseEnter(object sender, MouseEventArgs e)
    794785        {
    795             Button btn = sender as Button;
    796             OptionCaption.Text = btn.ToolTip as String;
     786           
    797787        }
    798788
  • trunk/CrypPlugins/WorkspaceManager/View/Resource/Styles.xaml

    r2118 r2119  
    117117                                <RotateTransform Angle="180"></RotateTransform>
    118118                            </StackPanel.LayoutTransform>
    119                             <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#666666" StrokeThickness="1"></Ellipse>
     119                            <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#444" StrokeThickness="1"></Ellipse>
    120120                        </StackPanel>
    121121                        <StackPanel Orientation="Horizontal">
     
    123123                                <RotateTransform Angle="180"></RotateTransform>
    124124                            </StackPanel.LayoutTransform>
    125                             <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#666666" StrokeThickness="1"></Ellipse>
    126                             <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#666666" StrokeThickness="1"></Ellipse>
     125                            <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#444" StrokeThickness="1"></Ellipse>
     126                            <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#444" StrokeThickness="1"></Ellipse>
    127127                        </StackPanel>
    128128                        <StackPanel Orientation="Horizontal">
     
    130130                                <RotateTransform Angle="180"></RotateTransform>
    131131                            </StackPanel.LayoutTransform>
    132                             <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#666666" StrokeThickness="1"></Ellipse>
    133                             <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#666666" StrokeThickness="1"></Ellipse>
    134                             <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#666666" StrokeThickness="1"></Ellipse>
     132                            <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#444" StrokeThickness="1"></Ellipse>
     133                            <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#444" StrokeThickness="1"></Ellipse>
     134                            <Ellipse Width="5" Height="5" Fill="WhiteSmoke" Stroke="#444" StrokeThickness="1"></Ellipse>
    135135                        </StackPanel>
    136136
  • trunk/CrypPlugins/WorkspaceManager/View/VisualComponents/DataPresentation.xaml

    r1807 r2119  
    55             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    66             xmlns:z="clr-namespace:WorkspaceManager.View.Converter"
    7              mc:Ignorable="d" >
     7             mc:Ignorable="d" d:DesignHeight="500" d:DesignWidth="500">
    88    <UserControl.LayoutTransform>
    99        <ScaleTransform ScaleX="0.7" ScaleY="0.7"></ScaleTransform>
     
    1919        </ResourceDictionary>
    2020    </UserControl.Resources>
    21     <Grid Margin="2" >
    22         <Border CornerRadius="6" BorderBrush="#777777" BorderThickness="1" Background="{StaticResource ResourceKey=DataPresentationLinearBrush}" Padding="3">
    23             <StackPanel Orientation="Vertical">
    24                 <Border CornerRadius="6" Background="{StaticResource ResourceKey=DataPresentationNameLinearBrush}" BorderBrush="#cea87c" MouseLeftButtonDown="Border_MouseLeftButtonDown">
    25                     <Grid>
    26                         <TextBlock FontWeight="Bold" HorizontalAlignment="Left" Padding="4" FontSize="13" Foreground="{Binding Path=Model.ConnectorType, Converter={StaticResource ResourceKey=ColorConverter}}" Text="{Binding Path=Model.ConnectorType.Name, FallbackValue=N/A}">
    27                             <TextBlock.Effect>
    28                                 <DropShadowEffect ShadowDepth="0" BlurRadius="3"></DropShadowEffect>
    29                             </TextBlock.Effect>
    30                         </TextBlock>
    31                         <TextBlock FontWeight="Bold" HorizontalAlignment="Right" Padding="4" FontSize="13" Foreground="WhiteSmoke" Text="{Binding Path=Model.Outgoing, Converter={StaticResource ResourceKey=InputOutputConverter}, FallbackValue=N/A}">
    32                             <TextBlock.Effect>
    33                                 <DropShadowEffect ShadowDepth="0" BlurRadius="3"></DropShadowEffect>
    34                             </TextBlock.Effect>
    35                         </TextBlock>
    36                     </Grid>
    37                 </Border>
    38                 <Border x:Name="DataPanel" Height="125" Visibility="Collapsed">
    39                     <ScrollViewer>
    40                         <TextBlock Foreground="WhiteSmoke" FontSize="14" Name="Data" Text="N/A" TextWrapping="Wrap"></TextBlock>
    41                     </ScrollViewer>
    42                 </Border>
     21    <DockPanel LastChildFill="True">
     22        <Border CornerRadius="2" BorderBrush="#777777" BorderThickness="1" Background="{StaticResource ResourceKey=NormalBrush}" Padding="3" DockPanel.Dock="Top" Height="50">
     23            <ListView Background="Transparent" Name="listViewLogList" ItemsSource="{Binding}">
     24                <ListView.ItemTemplate>
     25                    <DataTemplate>
     26                        <Border x:Name="ItemEntry" Margin="1" BorderThickness="1" BorderBrush="#AAFFFFFF" Background="#55FFFFFF">
     27                            <StackPanel Orientation="Horizontal" Margin="2">
     28                                <TextBlock Text="{Binding Path=Caption}" FontSize="17" Margin="2"></TextBlock>
     29                            </StackPanel>
     30                        </Border>
     31                    </DataTemplate>
     32                </ListView.ItemTemplate>
     33                <ListView.ItemsPanel>
     34                    <ItemsPanelTemplate>
     35                        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center"></StackPanel>
     36                    </ItemsPanelTemplate>
     37                </ListView.ItemsPanel>
     38            </ListView>
     39        </Border>
     40        <Border DockPanel.Dock="Bottom" CornerRadius="2" Background="#33FFFFFF">
     41            <StackPanel>
     42                <TextBlock x:Name="Input" FontSize="18" Text="Connector Type: N/A"></TextBlock>
    4343            </StackPanel>
    4444        </Border>
    45     </Grid>
     45        <Border CornerRadius="2" BorderBrush="#777777" BorderThickness="1" Background="#22123456" Padding="3">
     46            <Grid>
     47                <TextBlock x:Name="DataBox" Foreground="White" FontSize="23"></TextBlock>
     48            </Grid>
     49        </Border>
     50    </DockPanel>
    4651</UserControl>
  • trunk/CrypPlugins/WorkspaceManager/View/VisualComponents/DataPresentation.xaml.cs

    r1929 r2119  
    1313using System.Windows.Shapes;
    1414using WorkspaceManager.View.Container;
     15using System.Collections.ObjectModel;
     16using System.Windows.Threading;
     17using System.Collections;
     18using System.ComponentModel;
    1519
    1620namespace WorkspaceManager.View.VisualComponents
     
    2125    public partial class DataPresentation : UserControl
    2226    {
    23         public ConnectorView Connector { get; set; }
     27        private ObservableCollection<CollectionElement> valueCollection;
     28        public ObservableCollection<CollectionElement> ValueCollection
     29        {
     30            get { return valueCollection; }
     31            set { valueCollection = value; }
     32        }
    2433
    2534        public DataPresentation()
    2635        {
    2736            InitializeComponent();
     37            valueCollection = new ObservableCollection<CollectionElement>();
     38            listViewLogList.DataContext = ValueCollection;
     39            DataContext = this;
    2840        }
    2941
    30         public DataPresentation(ConnectorView connector)
     42        public DataPresentation(List<ConnectorView> list)
    3143        {
    32             setBaseControl(connector);
    3344            InitializeComponent();
     45            valueCollection = new ObservableCollection<CollectionElement>();
     46            listViewLogList.DataContext = ValueCollection;
     47            listViewLogList.SelectionChanged += new SelectionChangedEventHandler(listViewLogList_SelectionChanged);
     48
     49            foreach (ConnectorView connector in list)
     50            {
     51                ValueCollection.Add(new CollectionElement(connector, DataBox));
     52            }
    3453        }
    3554
    36         private void setBaseControl(ConnectorView connector)
     55        void listViewLogList_SelectionChanged(object sender, SelectionChangedEventArgs e)
    3756        {
    38             this.Connector = connector;
    39             this.DataContext = connector;
     57            if (e.AddedItems.Count == 0)
     58                return;
     59               
     60            IList collection = (IList)e.AddedItems;
     61            var list = collection.Cast<View.VisualComponents.DataPresentation.CollectionElement>();
     62
     63            list.First().Start();
     64            if(list.First().Connector.model.Outgoing)
     65                Input.Text = "Connector Type: Output";
     66            else
     67                Input.Text = "Connector Type: Input";
    4068        }
    4169
    42         public void update()
     70        public class CollectionElement : ItemsControl
    4371        {
    44             if(Connector.Model.HasData)
    45                 Data.Text = Connector.Model.Data.ToString();
     72            private String data;
     73            public String Data { get { return data; } set { Block.Text = value; data = value; } }
     74            public String Caption { get; set; }
     75            private DispatcherTimer timer = new DispatcherTimer();
     76            public ConnectorView Connector { get; set; }
     77            public TextBlock Block { get; set; }
    4678
    47             return;
    48         }
    49 
    50         private void Border_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
    51         {
    52             if (DataPanel.Visibility == Visibility.Collapsed)
     79            public CollectionElement(ConnectorView element, TextBlock textBlock)
    5380            {
    54                 DataPanel.Visibility = Visibility.Visible;
    55                 return;
     81                Connector = element;
     82                this.Block = textBlock;
     83                Caption = element.Model.ConnectorType.Name;
     84                timer.Interval = new TimeSpan(0, 0, 5);
     85                timer.Tick +=new EventHandler(timer_Tick);
    5686            }
    5787
    58             if (DataPanel.Visibility == Visibility.Visible)
     88            public void Start()
    5989            {
    60                 DataPanel.Visibility = Visibility.Collapsed;
    61                 return;
     90                timer.Start();
     91                if (Connector.model.Data != null)
     92                    Data = Connector.model.Data.ToString();
    6293            }
    6394
     95            public void Stop()
     96            {
     97                timer.Stop();
     98            }
     99
     100            void timer_Tick(object sender, EventArgs e)
     101            {
     102                if (Connector.model.Data != null)
     103                    Data = Connector.model.Data.ToString();
     104            }
    64105        }
    65106    }
  • trunk/CrypPlugins/WorkspaceManager/WorkspaceManager.csproj

    r2118 r2119  
    123123    <Compile Include="View\Converter\ConnectorBindingConverter.cs" />
    124124    <Compile Include="View\Converter\ContextMenuFixUnfixConverter.cs" />
     125    <Compile Include="View\Converter\CurrentItemConverter.cs" />
    125126    <Compile Include="View\Converter\DragDeltaViewStateConverter.cs" />
    126127    <Compile Include="View\Converter\DragDropDataObjectToPluginConverter.cs" />
     
    136137    <Compile Include="View\Converter\ToolbarVisibilityConverter.cs" />
    137138    <Compile Include="View\Converter\TransparentColorConverter.cs" />
     139    <Compile Include="View\Converter\ViewStateCaptionConverter.cs" />
    138140    <Compile Include="View\Converter\ViewStateConverter.cs" />
    139141    <Compile Include="View\Converter\ViewStateIconConverter.cs" />
Note: See TracChangeset for help on using the changeset viewer.