Statistics
| Branch: | Revision:

root / trunk / Pithos.Client.WPF / FileProperties / NewContainerViewModel.cs @ 422c9598

History | View | Annotate | Download (1.3 kB)

1 b12f73e8 Panagiotis Kanavos
using System;
2 b12f73e8 Panagiotis Kanavos
using System.Collections.Generic;
3 b12f73e8 Panagiotis Kanavos
using System.ComponentModel.Composition;
4 b12f73e8 Panagiotis Kanavos
using System.Linq;
5 b12f73e8 Panagiotis Kanavos
using System.Text;
6 b12f73e8 Panagiotis Kanavos
using Caliburn.Micro;
7 b12f73e8 Panagiotis Kanavos
using Pithos.Core;
8 b12f73e8 Panagiotis Kanavos
9 b12f73e8 Panagiotis Kanavos
namespace Pithos.Client.WPF.FileProperties
10 b12f73e8 Panagiotis Kanavos
{
11 b12f73e8 Panagiotis Kanavos
    [Export(typeof(NewContainerViewModel))]
12 b12f73e8 Panagiotis Kanavos
    public class NewContainerViewModel:Screen
13 b12f73e8 Panagiotis Kanavos
    {
14 b12f73e8 Panagiotis Kanavos
        public IEnumerable<string> Accounts { get; set; }
15 b12f73e8 Panagiotis Kanavos
16 b12f73e8 Panagiotis Kanavos
        private string _currentAccount;
17 b12f73e8 Panagiotis Kanavos
        public string CurrentAccount
18 b12f73e8 Panagiotis Kanavos
        {
19 b12f73e8 Panagiotis Kanavos
            get { return _currentAccount; }
20 b12f73e8 Panagiotis Kanavos
            set
21 b12f73e8 Panagiotis Kanavos
            {
22 b12f73e8 Panagiotis Kanavos
                _currentAccount = value;
23 b12f73e8 Panagiotis Kanavos
                NotifyOfPropertyChange(()=>CurrentAccount);
24 b12f73e8 Panagiotis Kanavos
            }
25 b12f73e8 Panagiotis Kanavos
        }
26 b12f73e8 Panagiotis Kanavos
27 b12f73e8 Panagiotis Kanavos
        private string _containerName;
28 b12f73e8 Panagiotis Kanavos
        public string ContainerName
29 b12f73e8 Panagiotis Kanavos
        {
30 b12f73e8 Panagiotis Kanavos
            get { return _containerName; }
31 b12f73e8 Panagiotis Kanavos
            set
32 b12f73e8 Panagiotis Kanavos
            {
33 b12f73e8 Panagiotis Kanavos
                _containerName = value;
34 b12f73e8 Panagiotis Kanavos
                NotifyOfPropertyChange(()=>ContainerName);
35 b12f73e8 Panagiotis Kanavos
            }
36 b12f73e8 Panagiotis Kanavos
        }
37 b12f73e8 Panagiotis Kanavos
38 b12f73e8 Panagiotis Kanavos
        public NewContainerViewModel(ShellViewModel shell)
39 b12f73e8 Panagiotis Kanavos
        {
40 b12f73e8 Panagiotis Kanavos
            Accounts=shell.Monitors.Select(pair => pair.Value.UserName);
41 b12f73e8 Panagiotis Kanavos
42 b12f73e8 Panagiotis Kanavos
        }
43 b12f73e8 Panagiotis Kanavos
44 b12f73e8 Panagiotis Kanavos
        public bool CanCreateContainer
45 b12f73e8 Panagiotis Kanavos
        {
46 b12f73e8 Panagiotis Kanavos
            get { return !String.IsNullOrWhiteSpace(CurrentAccount) && !String.IsNullOrWhiteSpace(ContainerName); }
47 b12f73e8 Panagiotis Kanavos
        }
48 b12f73e8 Panagiotis Kanavos
49 b12f73e8 Panagiotis Kanavos
        public void CreateContainer()
50 b12f73e8 Panagiotis Kanavos
        {
51 b12f73e8 Panagiotis Kanavos
            
52 b12f73e8 Panagiotis Kanavos
        }
53 b12f73e8 Panagiotis Kanavos
54 b12f73e8 Panagiotis Kanavos
    }
55 b12f73e8 Panagiotis Kanavos
}