Ignore:
Timestamp:
Aug 12, 2011, 4:32:33 PM (13 years ago)
Author:
bayral
Message:

root category handled

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/PiwigoLib/PiwigoWpf/MainWindow.xaml

    r11926 r11935  
    99        xmlns:pwghlp="clr-namespace:Com.Piwigo.Wpf.Helper"
    1010        Title="PiwigoWpf"
     11        Name="_this"
    1112        WindowState="Maximized"
    12         MinHeight="600" MinWidth="800">
     13        MinHeight="600" MinWidth="800" Background="AliceBlue">
    1314    <Window.Resources>
    1415        <pwghlp:AdvBooltoVisibilityConverter x:Key="AdvBooltoVisibilityConverter"  Collapse="False" Reverse="False" />
    1516        <pwghlp:AdvBooltoVisibilityConverter x:Key="AdvBooltoVisibilityConverterReversal"  Collapse="False" Reverse="True" />
     17        <Style TargetType="GridSplitter">
     18            <Setter Property="Background"  Value="CadetBlue"/>
     19            <Setter Property="Margin"  Value="0"/>
     20            <Setter Property="HorizontalAlignment"  Value="Stretch"/>
     21            <Setter Property="VerticalAlignment"  Value="Stretch"/>
     22            <Setter Property="ShowsPreview"  Value="True" />
     23            <Setter Property="ResizeBehavior"  Value="PreviousAndNext"/>
     24        </Style>
     25        <ControlTemplate x:Key="loadingAnimation">
     26            <ControlTemplate.Triggers>
     27                <Trigger Property="Visibility" Value="Visible">
     28                    <Trigger.EnterActions>
     29                        <BeginStoryboard Name="animation">
     30                            <Storyboard Storyboard.DesiredFrameRate="25">
     31                                <DoubleAnimation From="0" To="359" Duration="0:0:5" RepeatBehavior="Forever"
     32                                                 Storyboard.TargetName="angle" Storyboard.TargetProperty="Angle"/>
     33                            </Storyboard>
     34                        </BeginStoryboard>
     35                    </Trigger.EnterActions>
     36                    <Trigger.ExitActions>
     37                        <StopStoryboard BeginStoryboardName="animation"/>
     38                    </Trigger.ExitActions>
     39                </Trigger>
     40            </ControlTemplate.Triggers>
     41            <Image Name="content" Opacity="0.4">
     42                <Image.Source>
     43                    <DrawingImage>
     44                        <DrawingImage.Drawing>
     45                            <DrawingGroup>
     46                                <GeometryDrawing Brush="Transparent">
     47                                    <GeometryDrawing.Geometry>
     48                                        <RectangleGeometry Rect="0,0,1,1"/>
     49                                    </GeometryDrawing.Geometry>
     50                                </GeometryDrawing>
     51                                <DrawingGroup>
     52                                    <DrawingGroup.Transform>
     53                                        <RotateTransform x:Name="angle" Angle="0" CenterX="0.5" CenterY="0.5"/>
     54                                    </DrawingGroup.Transform>
     55                                    <GeometryDrawing>
     56                                        <GeometryDrawing.Pen>
     57                                            <Pen Brush="Aquamarine" Thickness="0.08"/>
     58                                        </GeometryDrawing.Pen>
     59                                        <GeometryDrawing.Geometry>
     60                                            <PathGeometry>
     61                                                <PathFigure StartPoint="0.9,0.5">
     62                                                    <ArcSegment Point="0.5,0.1" RotationAngle="90" SweepDirection="Clockwise" IsLargeArc="True" Size="0.4,0.4"/>
     63                                                </PathFigure>
     64                                            </PathGeometry>
     65                                        </GeometryDrawing.Geometry>
     66                                    </GeometryDrawing>
     67                                    <GeometryDrawing Brush="Aquamarine">
     68                                        <GeometryDrawing.Geometry>
     69                                            <PathGeometry>
     70                                                <PathFigure StartPoint="0.5,0">
     71                                                    <LineSegment Point="0.7,0.1" />
     72                                                    <LineSegment Point="0.5,0.2" />
     73                                                </PathFigure>
     74                                            </PathGeometry>
     75                                        </GeometryDrawing.Geometry>
     76                                    </GeometryDrawing>
     77                                </DrawingGroup>
     78                            </DrawingGroup>
     79                        </DrawingImage.Drawing>
     80                    </DrawingImage>
     81                </Image.Source>
     82            </Image>
     83        </ControlTemplate>
    1684    </Window.Resources>
    1785    <Grid>
    1886        <Grid.ColumnDefinitions >
    19             <ColumnDefinition Width="*"/>
     87            <ColumnDefinition Width="Auto"/>
    2088            <ColumnDefinition Width="Auto"/>
    2189            <ColumnDefinition Width="*" MinWidth="600"/>
    2290        </Grid.ColumnDefinitions>
    2391        <Grid.RowDefinitions>
    24             <RowDefinition Height="Auto" />
    25             <RowDefinition Height="*" />
    2692            <RowDefinition Height="Auto" />
    2793            <RowDefinition Height="*" />
     
    37103                   Source="pack://application:,,,/Pictures/PiwigoLogo.png"
    38104                   ToolTip="www.piwigo.org" Stretch="None" HorizontalAlignment="Left" />
    39                 <Image Name="ImgGlobe" Margin="2"
    40                    Visibility="{Binding Source={x:Static pwgdto:PwgModelManager.Instance}, Path=booCmdRunning, Converter={StaticResource AdvBooltoVisibilityConverter}}"
     105                <Grid Name="OverLay" Visibility="{Binding Source={x:Static pwgdto:PwgModelManager.Instance}, Path=booCmdRunning, Converter={StaticResource AdvBooltoVisibilityConverter}}">
     106                <Image Name="ImgGlobe" Margin="2"                   
    41107                   Source="pack://application:,,,/Pictures/128x128/Globe.png"
    42                    ToolTip="www.piwigo.org" Stretch="None" HorizontalAlignment="Right"/>
     108                   ToolTip="www.piwigo.org" Stretch="None" HorizontalAlignment="Right">
     109                </Image>
     110                <Control Name="loading" Grid.Column="4" Template="{StaticResource loadingAnimation}"
     111                 Width="116" VerticalAlignment="Center" HorizontalAlignment="Center" />
     112                </Grid>
    43113                <UniformGrid  Name="SessInfo" Margin="10" DataContext="{Binding Source={x:Static pwgdto:PwgModelManager.Instance}, Path=Session}" Columns="2" Rows="5">
    44114                    <Label Content="Status"/>
     
    68138            </StackPanel>
    69139        </StackPanel>
    70         <TreeView Name="listViewCategory" 
     140        <TreeView Name="listViewCategory"  Background="{Binding ElementName=this}"
    71141                Grid.Column="0"
    72142                Grid.Row="1" 
    73                 Grid.RowSpan="3"
    74                 MinWidth="100"
     143                MinWidth="180"
    75144                DataContext="{Binding Source={StaticResource Categories}}"
    76                 ItemsSource="{Binding }" MouseDoubleClick="listViewCategory_MouseDoubleClick">
     145                ItemsSource="{Binding}"  MouseDoubleClick="listViewCategory_MouseDoubleClick"
     146                HorizontalAlignment="Left" PreviewMouseDown="listViewCategory_PreviewMouseDown">
    77147            <TreeView.ItemContainerStyle>
    78148                <!--
     
    116186            <TreeView.Resources>
    117187                <HierarchicalDataTemplate
     188                DataType="{x:Type pwgdto:PwgTreeCategoryWPF}"
     189                ItemsSource="{Binding Childrens}"
     190                >
     191                    <StackPanel Orientation="Horizontal" DataContext="{Binding}"
     192                        VerticalAlignment="Center" HorizontalAlignment="Center">
     193                        <Image Source="pack://application:,,,/Pictures/22x22/folder_html.png" Margin="5"
     194                        Stretch="None">
     195                        </Image>
     196                        <TextBlock Text="{Binding Name}" />
     197                    </StackPanel>
     198                </HierarchicalDataTemplate>
     199                <HierarchicalDataTemplate
    118200                DataType="{x:Type pwgdto:PwgCategoryWPF}"
    119                 ItemsSource="{Binding Children}"
     201                ItemsSource="{Binding Childrens}"
    120202                >
    121203                    <StackPanel Orientation="Horizontal" DataContext="{Binding}"
     
    123205                        <Image Source="pack://application:,,,/Pictures/22x22/folder_images.png" Margin="5"
    124206                        Stretch="None">
    125                             <Image.ToolTip>
    126                                 <StackPanel Orientation="Vertical">
    127                                     <StackPanel Orientation="Horizontal">
    128                                         <TextBlock Text="{Binding Path=ImagesCount}"/>
    129                                         <TextBlock Text=" images inside"/>
    130                                     </StackPanel>
    131                                     <StackPanel Orientation="Horizontal">
    132                                         <TextBlock Text="{Binding Path=SubCategoriesCount}"/>
    133                                         <TextBlock Text=" categories inside"/>
    134                                     </StackPanel>
    135                                 </StackPanel>
    136                             </Image.ToolTip>
    137207                        </Image>
    138208                        <TextBlock Text="{Binding Name}" />
     209                        <StackPanel.ToolTip>
     210                            <UniformGrid>
     211                                    <TextBlock Text="{Binding Path=ImagesCount}"/>
     212                                    <TextBlock Text=" images inside"/>
     213                                    <TextBlock Text="{Binding Path=SubCategoriesCount}"/>
     214                                    <TextBlock Text=" categories inside"/>
     215                            </UniformGrid>
     216                        </StackPanel.ToolTip>
    139217                    </StackPanel>
    140218                </HierarchicalDataTemplate>
    141219            </TreeView.Resources>
    142220        </TreeView>
    143         <GridSplitter   ResizeDirection="Columns"
     221        <GridSplitter ResizeDirection="Columns"
    144222                    Grid.Column="1"
    145223                    Grid.Row="1" 
    146                     Grid.RowSpan="3"
    147                     Width="10" Background="Azure" ShowsPreview="True" ResizeBehavior="PreviousAndNext"></GridSplitter>
    148         <ListView Name="listViewImage"   
    149             Grid.Column="3"
    150             Grid.Row="1"   
     224                    Width="5" Height="Auto"></GridSplitter>
     225        <Grid Name="CatgeoryContent"
     226                    Grid.Column="2"
     227                    Grid.Row="1"  >
     228            <Grid.ColumnDefinitions >
     229                <ColumnDefinition Width="*"/>
     230            </Grid.ColumnDefinitions>
     231            <Grid.RowDefinitions>
     232                <RowDefinition Height="*" />
     233                <RowDefinition Height="Auto"/>
     234                <RowDefinition Height="*" />
     235            </Grid.RowDefinitions>
     236            <ListView Name="listViewImage" Background="{Binding ElementName=this}"
     237            Grid.Column="0"
     238            Grid.Row="0"   
    151239            MinWidth="500"
    152240            DataContext="{Binding Source={StaticResource Images}}"
    153241            ItemsSource="{Binding }" SelectionMode="Single" IsSynchronizedWithCurrentItem="True" SelectionChanged="listViewImage_SelectionChanged">
    154             <ListView.ItemsPanel>
    155                 <ItemsPanelTemplate>
    156                     <UniformGrid/>
    157                 </ItemsPanelTemplate>
    158             </ListView.ItemsPanel>
    159             <ListView.ItemContainerStyle>
    160                 <Style TargetType="{x:Type ListViewItem}">
    161                     <Setter Property="FontWeight" Value="Normal" />
    162                     <Setter Property="MaxHeight" Value="75" />
    163                     <Setter Property="MinHeight" Value="75" />
    164                     <Setter Property="Opacity" Value=".75" />
    165                     <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
    166                     <Style.Triggers>
    167                         <EventTrigger RoutedEvent="Mouse.MouseEnter">
    168                             <EventTrigger.Actions>
    169                                 <BeginStoryboard>
    170                                     <Storyboard>
    171                                         <DoubleAnimation
     242                <ListView.ItemsPanel>
     243                    <ItemsPanelTemplate>
     244                        <UniformGrid/>
     245                    </ItemsPanelTemplate>
     246                </ListView.ItemsPanel>
     247                <ListView.ItemContainerStyle>
     248                    <Style TargetType="{x:Type ListViewItem}">
     249                        <Setter Property="FontWeight" Value="Normal" />
     250                        <Setter Property="MaxHeight" Value="75" />
     251                        <Setter Property="MinHeight" Value="75" />
     252                        <Setter Property="Opacity" Value=".75" />
     253                        <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
     254                        <Style.Triggers>
     255                            <EventTrigger RoutedEvent="Mouse.MouseEnter">
     256                                <EventTrigger.Actions>
     257                                    <BeginStoryboard>
     258                                        <Storyboard>
     259                                            <DoubleAnimation
    172260                                                                        Duration="0:0:0.2"
    173261                                                                        Storyboard.TargetProperty="Opacity"
    174262                                                                        To="1.0" />
    175                                     </Storyboard>
    176                                 </BeginStoryboard>
    177                             </EventTrigger.Actions>
    178                         </EventTrigger>
    179                         <EventTrigger RoutedEvent="Mouse.MouseLeave">
    180                             <EventTrigger.Actions>
    181                                 <BeginStoryboard>
    182                                     <Storyboard>
    183                                         <DoubleAnimation
     263                                        </Storyboard>
     264                                    </BeginStoryboard>
     265                                </EventTrigger.Actions>
     266                            </EventTrigger>
     267                            <EventTrigger RoutedEvent="Mouse.MouseLeave">
     268                                <EventTrigger.Actions>
     269                                    <BeginStoryboard>
     270                                        <Storyboard>
     271                                            <DoubleAnimation
    184272                                                                        Duration="0:0:0.2"
    185273                                                                        Storyboard.TargetProperty="Opacity" />
    186                                     </Storyboard>
    187                                 </BeginStoryboard>
    188                             </EventTrigger.Actions>
    189                         </EventTrigger>
    190                         <Trigger Property="IsSelected" Value="True">
    191                             <Setter Property="FontWeight" Value="Bold" />
    192                         </Trigger>
    193                     </Style.Triggers>
    194                 </Style>
    195             </ListView.ItemContainerStyle>
    196             <ListView.Resources>
    197                 <DataTemplate DataType="{x:Type pwgdto:PwgImageWPF}">
    198                     <Border VerticalAlignment="Center" HorizontalAlignment="Center" Padding="4" Margin="2" Background="Blue"
     274                                        </Storyboard>
     275                                    </BeginStoryboard>
     276                                </EventTrigger.Actions>
     277                            </EventTrigger>
     278                            <Trigger Property="IsSelected" Value="True">
     279                                <Setter Property="FontWeight" Value="Bold" />
     280                            </Trigger>
     281                        </Style.Triggers>
     282                    </Style>
     283                </ListView.ItemContainerStyle>
     284                <ListView.Resources>
     285                    <DataTemplate DataType="{x:Type pwgdto:PwgImageWPF}">
     286                        <Border VerticalAlignment="Center" HorizontalAlignment="Center" Padding="4" Margin="2" Background="Blue"
    199287                    DataContext="{Binding}">
    200                         <!--Source="{Binding UrlElement}"-->
    201                         <Image ToolTip="{Binding File}" >
    202                             <Image.Source>
    203                                 <Binding Path="ImgSourceThumb" />
    204                                 <!--Converter="{x:Static pwgsrv:ImageCacheManager.ImageUrlCachedConverter}"-->
    205                             </Image.Source>
    206                         </Image>
    207                     </Border>
    208                 </DataTemplate>
    209             </ListView.Resources>
    210         </ListView>
    211         <GridSplitter   ResizeDirection="Rows"
    212                     Grid.Column="3"
    213                     Grid.Row="2" 
    214                     Height="3" Background="Azure" ShowsPreview="True" ResizeBehavior="PreviousAndNext"></GridSplitter>
    215         <StackPanel Grid.Column="3"
    216                     Grid.Row="3"
    217                     MinHeight="150" MinWidth="200"  DataContext="{Binding Source={x:Static pwgdto:PwgModelManager.Instance}, Path=ImageShown}">
    218             <Image ToolTip="{Binding Path=File}" >
    219                 <Image.Source>
    220                     <Binding Path="ImgSource" />
    221                 </Image.Source>
    222             </Image>
    223         </StackPanel>
     288                            <!--Source="{Binding UrlElement}"-->
     289                            <Image ToolTip="{Binding File}" >
     290                                <Image.Source>
     291                                    <Binding Path="ImgSourceThumb" />
     292                                    <!--Converter="{x:Static pwgsrv:ImageCacheManager.ImageUrlCachedConverter}"-->
     293                                </Image.Source>
     294                            </Image>
     295                        </Border>
     296                    </DataTemplate>
     297                </ListView.Resources>
     298            </ListView>
     299            <GridSplitter ResizeDirection="Rows"
     300                    Grid.Column="0"
     301                    Grid.Row="1" 
     302                    Width="Auto"
     303                    Height="5"
     304            ></GridSplitter>
     305            <DockPanel Grid.Column="0"
     306                    Grid.Row="2"
     307                    DataContext="{Binding Source={x:Static pwgdto:PwgModelManager.Instance}, Path=ImageShown}"
     308                    >
     309                <Image ToolTip="{Binding Path=File}" MaxHeight="360" MaxWidth="480" MinHeight="120" MinWidth="160">
     310                    <Image.Source>
     311                        <Binding Path="ImgSource" />
     312                    </Image.Source>
     313                </Image>
     314            </DockPanel>
     315        </Grid>
    224316        <Expander 
    225317            Grid.Column="0"
    226318            Grid.ColumnSpan="3"
    227             Grid.Row="4"  >
     319            Grid.Row="3"  >
    228320            <Expander.Header>
    229321                <Button Height="18" Name="btnDeleteLog" Width="18"
Note: See TracChangeset for help on using the changeset viewer.