Changeset 11904


Ignore:
Timestamp:
08/04/11 00:45:47 (9 years ago)
Author:
bayral
Message:

PiwigoWPF

Location:
extensions/PiwigoLib
Files:
13 added
11 edited

Legend:

Unmodified
Added
Removed
  • extensions/PiwigoLib/Piwigo.sln

    r11850 r11904  
    11 
    22Microsoft Visual Studio Solution File, Format Version 11.00 
    3 # Visual Studio 2010 
     3# Visual C# Express 2010 
    44Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PiwigoLib", "PiwigoLib\PiwigoLib.csproj", "{64C068C5-DBFE-4712-9081-B9100698F35C}" 
    55EndProject 
     
    4040                {59F7FCF2-858A-406D-92A6-50514BD89B43}.Debug|Any CPU.ActiveCfg = Debug|x86 
    4141                {59F7FCF2-858A-406D-92A6-50514BD89B43}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 
     42                {59F7FCF2-858A-406D-92A6-50514BD89B43}.Debug|Mixed Platforms.Build.0 = Debug|x86 
    4243                {59F7FCF2-858A-406D-92A6-50514BD89B43}.Debug|x86.ActiveCfg = Debug|x86 
    4344                {59F7FCF2-858A-406D-92A6-50514BD89B43}.Debug|x86.Build.0 = Debug|x86 
  • extensions/PiwigoLib/PiwigoWpf/App.xaml

    r7150 r11904  
    66             Exit="onAppExit"> 
    77    <Application.Resources> 
    8         <ObjectDataProvider x:Name="ImagesODP" x:Key="Images" ObjectType="{x:Type piwigo:PwgImageListWPF}" /> 
     8        <ObjectDataProvider x:Name="ImagesODP" x:Key="Images" IsAsynchronous="True" ObjectType="{x:Type piwigo:PwgImageListWPF}" /> 
    99        <ObjectDataProvider x:Name="SessionODP" x:Key="Session" ObjectType="{x:Type piwigo:PwgSessionWPF}" /> 
    10         <ObjectDataProvider x:Name="CategoriesODP" x:Key="Categories" ObjectType="{x:Type piwigo:PwgCategoryListWPF}" /> 
     10        <ObjectDataProvider x:Name="CategoriesODP" x:Key="Categories" IsAsynchronous="True" ObjectType="{x:Type piwigo:PwgCategoryListWPF}" /> 
     11         
     12        <ResourceDictionary  x:Key="VisualStyleApp" Source="VisualStyleApp.xaml"/> 
    1113    </Application.Resources> 
    1214</Application> 
  • extensions/PiwigoLib/PiwigoWpf/Command/PwgCmdBase.cs

    r11850 r11904  
    1212       #region ICommand Membres 
    1313 
    14        public abstract  Boolean CanExecute(object parameter); 
     14       public abstract  bool CanExecute(object parameter); 
    1515 
    1616       public abstract void Execute(object parameter); 
  • extensions/PiwigoLib/PiwigoWpf/Command/PwgCmdConnect.cs

    r11850 r11904  
    66using Com.Piwigo.Wpf.DTO.Helper; 
    77using Com.Piwigo.Wpf.Helper; 
     8using Com.Piwigo.Wpf.Service; 
    89 
    910namespace Com.Piwigo.Wpf.Command 
     
    1112    public sealed class PwgCmdConnect : PwgCmdBase 
    1213    { 
    13         public override Boolean CanExecute(object parameter) 
     14        public override bool CanExecute(object parameter) 
    1415        { 
    1516            Boolean retVal = false; 
     
    4647 
    4748                PwgCategoryListWPFHelper.ConvertPwgCategoryListToPwgCategoryListWPF(lstCat, ref lstCatWPF); 
     49 
     50                ImageCacheManager.Instance.SetCurrentServer(uriServer.AbsoluteUri); 
    4851            } 
    4952            catch (PwgServiceException ex) 
  • extensions/PiwigoLib/PiwigoWpf/Helper/AppHelper.cs

    r11850 r11904  
    66using System.Windows; 
    77using System.Diagnostics.CodeAnalysis; 
     8using System.Windows.Input; 
     9using Com.Piwigo.Wpf.Command; 
    810 
    911namespace Com.Piwigo.Wpf.Helper 
     
    1113    public class AppHelper 
    1214    { 
    13         private static Boolean? _isInDesignMode; 
     15        private static bool? _isInDesignMode; 
    1416 
    1517        /// <summary> 
     
    1719        /// or Visual Studio). 
    1820        /// </summary> 
    19         public static Boolean IsInDesignModeStatic 
     21        public static bool IsInDesignModeStatic 
    2022        { 
    2123            get 
     
    2527                    var prop = DesignerProperties.IsInDesignModeProperty; 
    2628                    _isInDesignMode 
    27                         = (Boolean)DependencyPropertyDescriptor 
     29                        = (bool)DependencyPropertyDescriptor 
    2830                        .FromProperty(prop, typeof(FrameworkElement)) 
    2931                        .Metadata.DefaultValue; 
     
    4244            "CA1822:MarkMembersAsStatic", 
    4345            Justification = "Non static member needed for data binding")] 
    44         public Boolean IsInDesignMode 
     46        public bool IsInDesignMode 
    4547        { 
    4648            get 
     
    5052        } 
    5153 
     54        static public void ExecuteCommand<T>(object parameter) where T:  PwgCmdBase, new() 
     55        { 
     56            T cmd = new T(); 
     57            if (cmd.CanExecute(parameter)) 
     58            { 
     59                cmd.Execute(parameter); 
     60            } 
     61        } 
    5262    } 
    5363 
     64 
    5465} 
  • extensions/PiwigoLib/PiwigoWpf/MainWindow.xaml

    r7160 r11904  
    55        xmlns:pwgdto="clr-namespace:Com.Piwigo.Wpf.DTO" 
    66        xmlns:pwgcmd="clr-namespace:Com.Piwigo.Wpf.Command" 
     7        xmlns:pwgsrv="clr-namespace:Com.Piwigo.Wpf.Service" 
    78        Title="PiwigoWpf" 
    89        WindowState="Maximized" 
    910        MinHeight="600" MinWidth="800"> 
    1011    <Window.Resources> 
    11         <LinearGradientBrush x:Key="WindowGradient" StartPoint="0,0.3" EndPoint="1,0"> 
    12             <LinearGradientBrush.GradientStops> 
    13                 <GradientStop Color="#B2B6CAFF" Offset="0" /> 
    14                 <GradientStop Color="#BFC3D5FF" Offset="0.1" /> 
    15                 <GradientStop Color="#E0E4F0FF" Offset="0.3" /> 
    16                 <GradientStop Color="#E6EAF5FF" Offset="0.5" /> 
    17                 <GradientStop Color="#CFD7E2FF" Offset="0.6" /> 
    18                 <GradientStop Color="#BFC5D3FF" Offset="0.8" /> 
    19                 <GradientStop Color="#C4CBD8FF" Offset="1" /> 
    20             </LinearGradientBrush.GradientStops> 
    21         </LinearGradientBrush> 
    22  
    23         <LinearGradientBrush x:Key="ListBoxGradient" StartPoint="0,0" EndPoint="0,1"> 
    24             <LinearGradientBrush.GradientStops> 
    25                 <GradientStop Color="#90000000" Offset="0" /> 
    26                 <GradientStop Color="#40000000" Offset="0.005" /> 
    27                 <GradientStop Color="#10000000" Offset="0.04" /> 
    28                 <GradientStop Color="#20000000" Offset="0.945" /> 
    29                 <GradientStop Color="#60FFFFFF" Offset="1" /> 
    30             </LinearGradientBrush.GradientStops> 
    31         </LinearGradientBrush> 
    32  
    33         <LinearGradientBrush x:Key="ShoppingCartGradient" StartPoint="0,0" EndPoint="0,1"> 
    34             <LinearGradientBrush.GradientStops> 
    35                 <GradientStop Color="#90000000" Offset="0" /> 
    36                 <GradientStop Color="#40000000" Offset="0.002" /> 
    37                 <GradientStop Color="#10000000" Offset="0.02" /> 
    38                 <GradientStop Color="#20000000" Offset="0.98" /> 
    39                 <GradientStop Color="#60FFFFFF" Offset="1" /> 
    40             </LinearGradientBrush.GradientStops> 
    41         </LinearGradientBrush> 
    42  
    43         <LinearGradientBrush x:Key="ReflectionGradient" StartPoint="0,1" EndPoint="0,0"> 
    44             <LinearGradientBrush.GradientStops> 
    45                 <GradientStop Color="#50000000" Offset="0" /> 
    46                 <GradientStop Color="Transparent" Offset=".5" /> 
    47             </LinearGradientBrush.GradientStops> 
    48         </LinearGradientBrush> 
    49  
    50         <LinearGradientBrush x:Key="ButtonGradient" StartPoint="0,0" EndPoint="0,1"> 
    51             <LinearGradientBrush.GradientStops> 
    52                 <GradientStop Color="#FDB6CADF" Offset="0" /> 
    53                 <GradientStop Color="#FCC3C5FF" Offset="0.1" /> 
    54                 <GradientStop Color="#FCC4D0EF" Offset="0.3" /> 
    55                 <GradientStop Color="#FDB7C2DF" Offset="0.6" /> 
    56                 <GradientStop Color="#FE95B3CF" Offset="0.8" /> 
    57                 <GradientStop Color="#FE96AACF" Offset="1" /> 
    58             </LinearGradientBrush.GradientStops> 
    59         </LinearGradientBrush> 
    60  
    61         <LinearGradientBrush x:Key="VerticalScrollGradient" StartPoint="0,0" EndPoint="1,0"> 
    62             <LinearGradientBrush.GradientStops> 
    63                 <GradientStop Color="#FDB6CADF" Offset="0" /> 
    64                 <GradientStop Color="#FCC3C5FF" Offset="0.1" /> 
    65                 <GradientStop Color="#FCC4D0EF" Offset="0.3" /> 
    66                 <GradientStop Color="#FDB7C2DF" Offset="0.6" /> 
    67                 <GradientStop Color="#FE95B3CF" Offset="0.8" /> 
    68                 <GradientStop Color="#FE96AACF" Offset="1" /> 
    69             </LinearGradientBrush.GradientStops> 
    70         </LinearGradientBrush> 
    71  
    72         <LinearGradientBrush x:Key="ComboBoxGradient" StartPoint="0,0" EndPoint="0,1"> 
    73             <LinearGradientBrush.GradientStops> 
    74                 <GradientStop Color="#B2B6CAFF" Offset="0" /> 
    75                 <GradientStop Color="#B0B3C5FF" Offset="0.1" /> 
    76                 <GradientStop Color="#BEE4E0FF" Offset="0.3" /> 
    77                 <GradientStop Color="#B0D7E2FF" Offset="0.6" /> 
    78                 <GradientStop Color="#B0C5D3FF" Offset="0.8" /> 
    79                 <GradientStop Color="#C4CBD8FF" Offset="1" /> 
    80             </LinearGradientBrush.GradientStops> 
    81         </LinearGradientBrush> 
    82  
    83         <LinearGradientBrush x:Key="GreetingCardGradient" StartPoint="0,0" EndPoint="0,1"> 
    84             <LinearGradientBrush.GradientStops> 
    85                 <GradientStop Color="#EEEEEE" Offset="0" /> 
    86                 <GradientStop Color="#FFFFFF" Offset="1" /> 
    87             </LinearGradientBrush.GradientStops> 
    88         </LinearGradientBrush> 
    89  
    90         <LinearGradientBrush x:Key="ButtonUpGradient" StartPoint="0,0" EndPoint="0,1"> 
    91             <LinearGradientBrush.GradientStops> 
    92                 <GradientStop Color="Transparent" Offset="0" /> 
    93                 <GradientStop Color="#33000000" Offset="1" /> 
    94             </LinearGradientBrush.GradientStops> 
    95         </LinearGradientBrush> 
    96  
    97         <LinearGradientBrush x:Key="ButtonDownGradient" StartPoint="0,0" EndPoint="0,1"> 
    98             <LinearGradientBrush.GradientStops> 
    99                 <GradientStop Color="#10000000" Offset="0" /> 
    100                 <GradientStop Color="#20000000" Offset="1" /> 
    101             </LinearGradientBrush.GradientStops> 
    102         </LinearGradientBrush> 
    103  
    104         <LinearGradientBrush x:Key="ButtonDisabledGradient" StartPoint="0,0" EndPoint="0,1"> 
    105             <LinearGradientBrush.GradientStops> 
    106                 <GradientStop Color="#10302A90" Offset="0" /> 
    107                 <GradientStop Color="#10201040" Offset="1" /> 
    108             </LinearGradientBrush.GradientStops> 
    109         </LinearGradientBrush> 
    110  
    111         <!-- STYLES --> 
    112  
    113         <Style TargetType="{x:Type pwg:MainWindow}"> 
    114             <Setter Property="Background" Value="{DynamicResource WindowGradient}" /> 
    115         </Style> 
    116  
    117         <Style x:Key="TitleText" TargetType="{x:Type TextBlock}" > 
    118             <Setter Property="FontFamily" Value="Segoe Black" /> 
    119             <Setter Property="FontSize" Value="20px" /> 
    120             <Setter Property="Foreground" Value="MidnightBlue" /> 
    121         </Style> 
    122  
    123         <!-- DATA TEMPLATES --> 
     12        <ObjectDataProvider x:Key="listCat" IsAsynchronous="True" /> 
     13        <ObjectDataProvider x:Key="listImg" IsAsynchronous="True" /> 
     14 
     15              <!-- DATA TEMPLATES --> 
    12416 
    12517        <DataTemplate DataType="{x:Type pwgdto:PwgImageWPF}"> 
    12618            <Border VerticalAlignment="Center" HorizontalAlignment="Center" Padding="4" Margin="2" Background="Blue" 
    127                     DataContext="{Binding}"> 
    128                 <Image Source="{Binding UrlElement}" ToolTip="{Binding File}" /> 
     19                    DataContext="{Binding}"><!--Source="{Binding UrlElement}"--> 
     20                <Image ToolTip="{Binding File}" > 
     21                    <Image.Source> 
     22                        <PriorityBinding FallbackValue="pack://application:,,,/Pictures/Globe.png"> 
     23                            <Binding IsAsync="True" Converter="{x:Static pwgsrv:ImageCacheManager.ImageUrlCachedConverter}"/> 
     24                             
     25                    </PriorityBinding> 
     26                    </Image.Source> 
     27                </Image> 
    12928            </Border> 
    13029        </DataTemplate> 
    13130 
    132         <DataTemplate DataType="{x:Type pwgdto:PwgCategoryWPF}"> 
    133             <Border VerticalAlignment="Center" HorizontalAlignment="Center" Padding="4" Margin="2" Background="Blue" 
    134                     DataContext="{Binding}">                 
    135                 <TextBox ToolTip="{Binding Name}" /> 
     31        <DataTemplate DataType="{x:Type pwgdto:PwgCategoryWPF}"  > 
     32            <Border VerticalAlignment="Center" HorizontalAlignment="Center"  
     33                    Padding="4" Margin="1"  
     34                    Background="LightBlue" 
     35                    DataContext="{Binding}"> 
     36                <StackPanel Orientation="Vertical" DataContext="{Binding}" VerticalAlignment="Center" > 
     37                    <Image Source="pack://application:,,,/Pictures/folder_images.png"  
     38                           Stretch="Uniform" 
     39                           MaxHeight="128" 
     40                           MaxWidth="128"> 
     41                        <Image.ToolTip> 
     42                            <StackPanel Orientation="Vertical"> 
     43                            <StackPanel Orientation="Horizontal"> 
     44                                <TextBlock Text="{Binding Path=ImagesCount}"/> 
     45                                <TextBlock Text=" images inside"/> 
     46                            </StackPanel> 
     47                                <StackPanel Orientation="Horizontal"> 
     48                                    <TextBlock Text="{Binding Path=SubCategoriesCount}"/> 
     49                                    <TextBlock Text=" categories inside"/> 
     50                                </StackPanel> 
     51                            </StackPanel> 
     52                        </Image.ToolTip> 
     53                    </Image> 
     54                    <TextBlock Text="{Binding Name}" /> 
     55                </StackPanel> 
    13656            </Border> 
    13757        </DataTemplate> 
    13858 
     59        <Style x:Key="CategoryListStyle" TargetType="{x:Type ListBox}"> 
     60            <Setter Property="Template"> 
     61                <Setter.Value> 
     62                    <ControlTemplate TargetType="{x:Type ListBox}" > 
     63                        <Border  
     64                                                        BorderBrush="Gray"  
     65                                                        BorderThickness="1"  
     66                                                        CornerRadius="6"  
     67                            Background="LightBlue"                             
     68                                                         > 
     69                            <!--Background="{DynamicResource ListBoxGradient}"--> 
     70                            <ScrollViewer  
     71                                                                VerticalScrollBarVisibility="Auto"  
     72                                                                HorizontalScrollBarVisibility="Disabled"> 
     73                                <StackPanel   
     74                                                                        IsItemsHost="True"  
     75                                                                        Orientation="Vertical"  
     76                                                                        HorizontalAlignment="Center" 
     77                                    VerticalAlignment="Top"/> 
     78                            </ScrollViewer> 
     79                        </Border> 
     80                    </ControlTemplate> 
     81                </Setter.Value> 
     82            </Setter> 
     83        </Style> 
     84 
     85        <Style x:Key="CategoryListItem" TargetType="{x:Type ListBoxItem}"> 
     86            <Setter Property="MaxHeight" Value="128" /> 
     87            <Setter Property="MinHeight" Value="128" /> 
     88            <Setter Property="Opacity" Value=".75" /> 
     89            <Style.Triggers> 
     90                <EventTrigger RoutedEvent="Mouse.MouseEnter"> 
     91                    <EventTrigger.Actions> 
     92                        <BeginStoryboard> 
     93                            <Storyboard> 
     94                                <DoubleAnimation  
     95                                                                        Duration="0:0:0.2"  
     96                                                                        Storyboard.TargetProperty="MaxHeight"  
     97                                                                        To="220" /> 
     98                                <DoubleAnimation  
     99                                                                        Duration="0:0:0.2"  
     100                                                                        Storyboard.TargetProperty="Opacity" 
     101                                                                        To="1.0" /> 
     102                            </Storyboard> 
     103                        </BeginStoryboard> 
     104                    </EventTrigger.Actions> 
     105                </EventTrigger> 
     106 
     107                <EventTrigger RoutedEvent="Mouse.MouseLeave"> 
     108                    <EventTrigger.Actions> 
     109                        <BeginStoryboard> 
     110                            <Storyboard> 
     111                                <DoubleAnimation  
     112                                                                        Duration="0:0:1"  
     113                                                                        Storyboard.TargetProperty="MaxHeight" /> 
     114                                <DoubleAnimation  
     115                                                                        Duration="0:0:0.2"  
     116                                                                        Storyboard.TargetProperty="Opacity" /> 
     117                            </Storyboard> 
     118                        </BeginStoryboard> 
     119                    </EventTrigger.Actions> 
     120                </EventTrigger> 
     121            </Style.Triggers> 
     122        </Style> 
    139123        <!-- PHOTOLIST TEMPLATE --> 
    140  
     124         
    141125        <Style x:Key="PhotoListStyle" TargetType="{x:Type ListBox}"> 
    142126            <Setter Property="Template"> 
     
    147131                                                        BorderThickness="1"  
    148132                                                        CornerRadius="6"  
    149                                                         Background="{DynamicResource ListBoxGradient}" > 
     133                            Background="LightBlue"                             
     134                                                         > 
     135                            <!--Background="{DynamicResource ListBoxGradient}"--> 
    150136                            <ScrollViewer  
    151137                                                                VerticalScrollBarVisibility="Disabled"  
     
    203189        </Style> 
    204190 
    205         <!-- BUTTON TEMPLATE --> 
    206  
    207         <Style TargetType="{x:Type Button}"> 
    208             <Setter Property="Template"> 
    209                 <Setter.Value> 
    210                     <ControlTemplate TargetType="{x:Type Button}"> 
    211                         <Border x:Name="OuterBorder" 
    212                                                         CornerRadius="3"  
    213                                                         Background="{DynamicResource ButtonGradient}"> 
    214                             <Border 
    215                                                                 x:Name="InnerBorder" 
    216                                                                 CornerRadius="3" 
    217                                                                 Background="{DynamicResource ButtonUpGradient}" 
    218                                                                 Padding="{TemplateBinding Padding}"> 
    219                                 <ContentPresenter x:Name="ContentSite"  
    220                                                                 HorizontalAlignment="Center"  
    221                                                                 VerticalAlignment="Center" /> 
    222                             </Border> 
    223                         </Border> 
    224                         <ControlTemplate.Triggers> 
    225                             <Trigger Property="IsPressed" Value="true"> 
    226                                 <Setter TargetName="InnerBorder" Property="Background" Value="{DynamicResource ButtonDownGradient}" /> 
    227                             </Trigger> 
    228                             <Trigger Property="IsEnabled" Value="false"> 
    229                                 <Setter TargetName="InnerBorder" Property="Background" Value="{DynamicResource ButtonDisabledGradient}"  /> 
    230                                 <Setter Property="BorderBrush" Value="Silver"  /> 
    231                                 <Setter Property="Foreground" Value="SlateGray"  /> 
    232                             </Trigger> 
    233                         </ControlTemplate.Triggers> 
    234                     </ControlTemplate> 
    235                 </Setter.Value> 
    236             </Setter> 
    237             <Setter Property="Height" Value="18" /> 
    238             <Setter Property="Foreground" Value="MidnightBlue" /> 
    239         </Style> 
    240  
    241         <!-- COMBOBOX STYLE --> 
    242  
    243         <Style TargetType="{x:Type ComboBox}" > 
    244             <Setter Property="Background" Value="{DynamicResource ComboBoxGradient}" /> 
    245             <Setter Property="BorderThickness" Value="0" /> 
    246             <Setter Property="Height" Value="18px" /> 
    247             <Setter Property="Foreground" Value="MidnightBlue" /> 
    248         </Style> 
    249  
    250         <!-- PROGRESS BAR STYLE --> 
    251  
    252         <Style TargetType="{x:Type ProgressBar}" > 
    253             <Setter Property="Background" Value="{DynamicResource ComboBoxGradient}" /> 
    254             <Setter Property="BorderThickness" Value="1" /> 
    255             <Setter Property="BorderBrush" Value="Gray" /> 
    256             <Setter Property="Foreground" Value="MidnightBlue" /> 
    257         </Style> 
    258  
    259         <!-- SCROLLBAR TEMPLATES --> 
    260  
    261         <Style x:Key="Scrollbar_LineButton" TargetType="{x:Type RepeatButton}"> 
    262             <Setter Property="Template"> 
    263                 <Setter.Value> 
    264                     <ControlTemplate TargetType="{x:Type RepeatButton}"> 
    265                         <Border  
    266                                                         BorderBrush="Transparent"  
    267                                                         BorderThickness="1"  
    268                                                         CornerRadius="6"  
    269                                                         Background="{DynamicResource ButtonGradient}"> 
    270                             <ContentPresenter x:Name="ContentSite" /> 
    271                         </Border> 
    272                     </ControlTemplate> 
    273                 </Setter.Value> 
    274             </Setter> 
    275             <Setter Property="MinHeight" Value="12" /> 
    276             <Setter Property="MinWidth" Value="12" /> 
    277             <Setter Property="Foreground" Value="Gray" /> 
    278             <Setter Property="FontSize" Value="6pt" /> 
    279             <Setter Property="FontWeight" Value="Bold" /> 
    280             <Setter Property="FontFamily" Value="Lucida Sans" /> 
    281             <Setter Property="VerticalAlignment" Value="Center" /> 
    282             <Setter Property="HorizontalAlignment" Value="Center" /> 
    283         </Style> 
    284  
    285         <Style x:Key="ScrollBar_TrackRepeater"  TargetType="{x:Type RepeatButton}"> 
    286             <Setter Property="IsTabStop" Value="false" /> 
    287             <Setter Property="Focusable" Value="false" /> 
    288             <Setter Property="Command" Value="ScrollBar.PageUpCommand" /> 
    289             <Setter Property="Template"> 
    290                 <Setter.Value> 
    291                     <ControlTemplate TargetType="{x:Type RepeatButton}"> 
    292                         <Rectangle Fill="Transparent" /> 
    293                     </ControlTemplate> 
    294                 </Setter.Value> 
    295             </Setter> 
    296         </Style> 
    297  
    298         <Style x:Key="ScrollBar_UpTrack" BasedOn="{StaticResource ScrollBar_TrackRepeater}" TargetType="{x:Type RepeatButton}"> 
    299             <Setter Property="Command" Value="ScrollBar.PageUpCommand" /> 
    300         </Style> 
    301  
    302         <Style x:Key="ScrollBar_DownTrack" BasedOn="{StaticResource ScrollBar_TrackRepeater}" TargetType="{x:Type RepeatButton}"> 
    303             <Setter Property="Command" Value="ScrollBar.PageDownCommand" /> 
    304         </Style> 
    305  
    306         <Style x:Key="ScrollBar_LeftTrack" BasedOn="{StaticResource ScrollBar_TrackRepeater}" TargetType="{x:Type RepeatButton}"> 
    307             <Setter Property="Command" Value="ScrollBar.PageLeftCommand" /> 
    308         </Style> 
    309  
    310         <Style x:Key="ScrollBar_RightTrack" BasedOn="{StaticResource ScrollBar_TrackRepeater}" TargetType="{x:Type RepeatButton}"> 
    311             <Setter Property="Command" Value="ScrollBar.PageRightCommand" /> 
    312         </Style> 
    313  
    314         <Style x:Key="ScrollBar_VerticalThumb" TargetType="{x:Type Thumb}"> 
    315             <Setter Property="Template"> 
    316                 <Setter.Value> 
    317                     <ControlTemplate TargetType="{x:Type Thumb}"> 
    318                         <Border CornerRadius="6"  
    319                                                         BorderBrush="Transparent"      
    320                                                         BorderThickness="1"  
    321                                                         Background="{DynamicResource VerticalScrollGradient}" /> 
    322                     </ControlTemplate> 
    323                 </Setter.Value> 
    324             </Setter> 
    325             <Setter Property="MinHeight" Value="10" /> 
    326             <Setter Property="MinWidth" Value="10" /> 
    327         </Style> 
    328  
    329         <Style x:Key="ScrollBar_HorizontalThumb" TargetType="{x:Type Thumb}"> 
    330             <Setter Property="Template"> 
    331                 <Setter.Value> 
    332                     <ControlTemplate TargetType="{x:Type Thumb}"> 
    333                         <Border CornerRadius="6"  
    334                                                         BorderBrush="Transparent"      
    335                                                         BorderThickness="1"  
    336                                                         Background="{DynamicResource ButtonGradient}" /> 
    337                     </ControlTemplate> 
    338                 </Setter.Value> 
    339             </Setter> 
    340             <Setter Property="MinHeight" Value="10" /> 
    341             <Setter Property="MinWidth" Value="10" /> 
    342         </Style> 
    343  
    344         <Style TargetType="{x:Type ScrollBar}"> 
    345             <Setter Property="Background" Value="Transparent" /> 
    346             <Setter Property="MinWidth" Value="10" /> 
    347             <Setter Property="Template"> 
    348                 <Setter.Value> 
    349                     <ControlTemplate TargetType="{x:Type ScrollBar}"> 
    350                         <Grid> 
    351                             <Grid.ColumnDefinitions> 
    352                                 <ColumnDefinition Width="10"/> 
    353                             </Grid.ColumnDefinitions> 
    354                             <Grid.RowDefinitions> 
    355                                 <RowDefinition Height="10" /> 
    356                                 <RowDefinition Height="*"/> 
    357                                 <RowDefinition Height="10" /> 
    358                             </Grid.RowDefinitions> 
    359                             <Border Grid.Row="1" BorderThickness="0" Background="Transparent" CornerRadius="4"/> 
    360                             <RepeatButton Grid.Row="0" Style="{DynamicResource Scrollbar_LineButton}" Command="ScrollBar.LineUpCommand" Content=" ^" /> 
    361                             <Track Grid.Row="1" Name="PART_Track"  IsDirectionReversed="True"> 
    362                                 <Track.IncreaseRepeatButton> 
    363                                     <RepeatButton Style="{DynamicResource ScrollBar_DownTrack}"/> 
    364                                 </Track.IncreaseRepeatButton> 
    365                                 <Track.DecreaseRepeatButton> 
    366                                     <RepeatButton Style="{DynamicResource ScrollBar_UpTrack}"/> 
    367                                 </Track.DecreaseRepeatButton> 
    368                                 <Track.Thumb> 
    369                                     <Thumb Style="{DynamicResource ScrollBar_VerticalThumb}"/> 
    370                                 </Track.Thumb> 
    371                             </Track> 
    372                             <RepeatButton Grid.Row="2" Style="{DynamicResource Scrollbar_LineButton}" Command="ScrollBar.LineDownCommand" Content=" v" /> 
    373                         </Grid> 
    374                     </ControlTemplate> 
    375                 </Setter.Value> 
    376             </Setter> 
    377             <Style.Triggers> 
    378                 <Trigger Property="Orientation" Value="Horizontal" > 
    379                     <Setter Property="Background" Value="Transparent" /> 
    380                     <Setter Property="MinHeight" Value="10" /> 
    381                     <Setter Property="Template"> 
    382                         <Setter.Value> 
    383                             <ControlTemplate TargetType="{x:Type ScrollBar}"> 
    384                                 <Grid> 
    385                                     <Grid.RowDefinitions> 
    386                                         <RowDefinition Height="12"/> 
    387                                     </Grid.RowDefinitions> 
    388                                     <Grid.ColumnDefinitions> 
    389                                         <ColumnDefinition Width="12" /> 
    390                                         <ColumnDefinition Width="*"/> 
    391                                         <ColumnDefinition Width="12" /> 
    392                                     </Grid.ColumnDefinitions> 
    393                                     <Border Grid.Column="1" BorderThickness="0" Background="Transparent" CornerRadius="4"/> 
    394                                     <RepeatButton Grid.Column="0" Style="{DynamicResource Scrollbar_LineButton}" Command="ScrollBar.LineLeftCommand" Content=" &lt;" /> 
    395                                     <Track Grid.Column="1" Name="PART_Track"> 
    396                                         <Track.IncreaseRepeatButton> 
    397                                             <RepeatButton Style="{DynamicResource ScrollBar_RightTrack}"/> 
    398                                         </Track.IncreaseRepeatButton> 
    399                                         <Track.DecreaseRepeatButton> 
    400                                             <RepeatButton Style="{DynamicResource ScrollBar_LeftTrack}"/> 
    401                                         </Track.DecreaseRepeatButton> 
    402                                         <Track.Thumb> 
    403                                             <Thumb Style="{DynamicResource ScrollBar_HorizontalThumb}"/> 
    404                                         </Track.Thumb> 
    405                                     </Track> 
    406                                     <RepeatButton Grid.Column="2" Style="{DynamicResource Scrollbar_LineButton}" Command="ScrollBar.LineRightCommand" Content=" &gt;" /> 
    407  
    408                                 </Grid> 
    409                             </ControlTemplate> 
    410                         </Setter.Value> 
    411                     </Setter> 
    412                 </Trigger> 
    413             </Style.Triggers> 
    414         </Style> 
     191        <!--<Style TargetType="{x:Type pwg:MainWindow}"> 
     192            <Setter Property="Background" Value="{DynamicResource WindowGradient}" /> 
     193        </Style>--> 
     194 
    415195    </Window.Resources> 
    416196    <DockPanel Name="mainDockPanel"  Margin="5"> 
     
    418198            <Image Name="ImgPiwigoLogo" MinHeight="50" MinWidth="50" 
    419199                   Source="pack://application:,,,/Pictures/PiwigoLogo.png"  
    420                    ToolTip="www.piwigo.org" Stretch="None" /> 
     200                   ToolTip="www.piwigo.org" Stretch="None" HorizontalAlignment="Left" /> 
    421201            <StackPanel Name="connectStackPanel" Orientation="Horizontal" VerticalAlignment="Center"  Margin="5" 
    422202                        DataContext="{Binding Source={StaticResource Session}}"> 
     
    433213        </StackPanel> 
    434214 
    435         <ListView Name="listViewCategory" Style="PhotoListStyle" DockPanel.Dock="Left" MinWidth="100" ItemsSource="{Binding Source={StaticResource Categories}}" /> 
    436         <ListView Name="listViewImage" Style="PhotoListStyle" DockPanel.Dock="Right"  MinWidth="500" ItemsSource="{Binding Source={StaticResource Images}}" /> 
     215        <ListView Name="listViewCategory"  DockPanel.Dock="Left" MinWidth="100"  
     216                  Style="{DynamicResource CategoryListStyle}" 
     217                  ItemContainerStyle="{DynamicResource CategoryListItem}"  
     218                  DataContext="{Binding Source={StaticResource Categories}}"  
     219                  ItemsSource="{Binding }" MouseDoubleClick="listViewCategory_MouseDoubleClick" /> 
     220        <ListView Name="listViewImage"  DockPanel.Dock="Right"  MinWidth="500" 
     221                  Style="{DynamicResource PhotoListStyle}" 
     222                  ItemContainerStyle="{DynamicResource PhotoListItem}"  
     223                  DataContext="{Binding Source={StaticResource Images}}"  
     224                  ItemsSource="{Binding }" /> 
    437225    </DockPanel> 
    438226     
  • extensions/PiwigoLib/PiwigoWpf/MainWindow.xaml.cs

    r7150 r11904  
    1212using System.Windows.Navigation; 
    1313using System.Windows.Shapes; 
     14using Com.Piwigo.Wpf.Helper; 
     15using Com.Piwigo.Wpf.Command; 
    1416 
    1517namespace Com.Piwigo.Wpf 
     
    2426            InitializeComponent(); 
    2527        } 
     28 
     29        private void listViewCategory_MouseDoubleClick(object sender, MouseButtonEventArgs e) 
     30        { 
     31            AppHelper.ExecuteCommand<PwgCmdGetImageforCategory>(listViewCategory.SelectedValue); 
     32        } 
    2633    } 
    2734} 
  • extensions/PiwigoLib/PiwigoWpf/PiwigoWpf.csproj

    r11850 r11904  
    5959    <Reference Include="System.Data" /> 
    6060    <Reference Include="System.Drawing" /> 
     61    <Reference Include="System.Web" /> 
    6162    <Reference Include="System.Xml" /> 
    6263    <Reference Include="Microsoft.CSharp" /> 
     
    7677      <SubType>Designer</SubType> 
    7778    </ApplicationDefinition> 
     79    <Compile Include="Command\PwgCmdGetImageforCategory.cs" /> 
    7880    <Compile Include="Command\PwgCmdProvider.cs" /> 
    7981    <Compile Include="Command\PwgCmdConnect.cs" /> 
    8082    <Compile Include="Command\PwgCmdBase.cs" /> 
     83    <Compile Include="DTO\Helper\PwgImageListWPFHelper.cs" /> 
     84    <Compile Include="DTO\Helper\PwgImageWPFHelper.cs" /> 
    8185    <Compile Include="DTO\Helper\PwgCategoryWPFHelper.cs" /> 
    8286    <Compile Include="DTO\Helper\PwgCategoryListWPFHelper.cs" /> 
     
    8488    <Compile Include="DTO\PwgModelManager.cs" /> 
    8589    <Compile Include="Helper\AppHelper.cs" /> 
     90    <Compile Include="Helper\ImageUrlCachedConverter.cs" /> 
     91    <Compile Include="Service\ImageCacheManager.cs" /> 
    8692    <Compile Include="Settings.cs" /> 
    8793    <Page Include="MainWindow.xaml"> 
    8894      <Generator>MSBuild:Compile</Generator> 
    8995      <SubType>Designer</SubType> 
     96      <CustomToolNamespace>Com.Pixigo.Wpf</CustomToolNamespace> 
    9097    </Page> 
    9198    <Compile Include="App.xaml.cs"> 
     
    104111      <SubType>Code</SubType> 
    105112    </Compile> 
     113    <Page Include="VisualStyleApp.xaml"> 
     114      <SubType>Designer</SubType> 
     115      <Generator>MSBuild:Compile</Generator> 
     116    </Page> 
    106117  </ItemGroup> 
    107118  <ItemGroup> 
     
    122133      <Generator>ResXFileCodeGenerator</Generator> 
    123134      <LastGenOutput>Resources.Designer.cs</LastGenOutput> 
    124       <SubType>Designer</SubType> 
    125135    </EmbeddedResource> 
    126136    <None Include="app.config" /> 
     
    132142  </ItemGroup> 
    133143  <ItemGroup> 
    134     <EmbeddedResource Include="Pictures\PiwigoLogo.png" /> 
     144    <Resource Include="Pictures\PiwigoLogo.png" /> 
    135145  </ItemGroup> 
    136146  <ItemGroup> 
     
    165175    </BootstrapperPackage> 
    166176  </ItemGroup> 
     177  <ItemGroup> 
     178    <Resource Include="Pictures\Globe.png" /> 
     179  </ItemGroup> 
     180  <ItemGroup> 
     181    <Resource Include="Pictures\folder_images.png" /> 
     182  </ItemGroup> 
    167183  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 
    168184  <!-- To modify your build process, add your task inside one of the targets below and uncomment it.  
  • extensions/PiwigoLib/PiwigoWpf/Properties/Settings.Designer.cs

    r11850 r11904  
    99//------------------------------------------------------------------------------ 
    1010 
     11using System; 
    1112namespace Com.Piwigo.Wpf.Properties { 
    1213     
  • extensions/PiwigoLib/TestPiwigoLib/Form1.cs

    r11903 r11904  
    6060                //Console.WriteLine("lstImg : Page " + Page.ToString() + " PerPage " + PerPage); 
    6161 
    62                 //List<PwgCategory> lstCat = PwgServiceProvider.Instance.PwgCategoriesService.GetAdminListOfCategory();  
     62                List<PwgCategory> lstadmCat = PwgServiceProvider.Instance.PwgCategoriesService.GetAdminListOfCategory();  
     63 
     64                List<PwgCategory> lstCat = PwgServiceProvider.Instance.PwgCategoriesService.GetListOfCategory(0, true, false); 
    6365 
    6466                Int32 newid = 0; 
     
    7476                //lstCat = PwgServiceProvider.Instance.PwgCategoriesService.GetAdminListOfCategory();  
    7577 
    76                 FileInfo fiBig = new FileInfo("C:\\Users\\bayral\\Downloads\\49133_1636405570_2648232_n.jpg"); 
    77                 FileInfo fiThumb = new FileInfo(MakeThumb(fiBig, "C:\\Users\\bayral\\Downloads\\49133_1636405570_2648232_n_thum.jpg", 64)); 
    78                 FileInfo fiLow = new FileInfo(MakeThumb(fiBig, "C:\\Users\\bayral\\Downloads\\49133_1636405570_2648232_n_low.jpg", 256)); 
     78                //FileInfo fiBig = new FileInfo("C:\\Users\\bayral\\Downloads\\49133_1636405570_2648232_n.jpg"); 
     79                //FileInfo fiThumb = new FileInfo(MakeThumb(fiBig, "C:\\Users\\bayral\\Downloads\\49133_1636405570_2648232_n_thum.jpg", 64)); 
     80                //FileInfo fiLow = new FileInfo(MakeThumb(fiBig, "C:\\Users\\bayral\\Downloads\\49133_1636405570_2648232_n_low.jpg", 256)); 
    7981 
    8082                //FileInfo fiBig = new FileInfo("C:\\temp\\Oryx.jpg"); 
     
    8385 
    8486                //PwgImageAdded imgAdd = PwgServiceProvider.Instance.PwgImagesService.addImageByMultiPartForm(fiBig, null, 1, "benoit", "byarl", "test upload", 0, new List<PwgTag>() { new PwgTag() { Name = "Benoit" }, new PwgTag() { Name = "Noé" } }); 
    85                 rc = PwgServiceProvider.Instance.PwgImagesService.addImage(fiBig, fiLow, fiThumb, "Benoit", "bayral", DateTime.Now, "demo", new List<string>() { "1" }, new List<string>() { "Benoit" }, PwgConfidentLevelEnum.All); 
     87                //rc = PwgServiceProvider.Instance.PwgImagesService.addImage(fiBig, fiLow, fiThumb, "Benoit", "bayral", DateTime.Now, "demo", new List<string>() { "1" }, new List<string>() { "Benoit" }, PwgConfidentLevelEnum.All); 
    8688                //rc = PwgServiceProvider.Instance.PwgImagesService.DeleteImage(319, sess.SecurityToken); 
    8789 
Note: See TracChangeset for help on using the changeset viewer.