public JobContainerViewModel(ImageDownloaderContainer downloader)
 {
     ThumbDir = new System.IO.DirectoryInfo(string.Format("{0}\\{1}", System.IO.Path.GetTempPath(), System.IO.Path.GetRandomFileName()));
     ThumbDir.Create();
     _downloader = downloader;
     _downloader.AddedDownloadingImage += _downloader_DownloadingImageEvent;
 }
 public MainWindowModel()
 {
     Setting = new SettingManager();
     Setting.SavingSetting += Setting_SavingSetting;
     Setting.SavedSetting += Setting_SavedSetting;
     Downloader = new ImageDownloaderContainer(Setting);
     Downloader.RaiseError += Downloader_RaiseError;
 }
        public SettingViewModel(ImageDownloaderContainer jobContainer, SettingManager setting)
        {
            EmailAddress = setting.EmailAddress;
            Password = setting.Password;
            ImageSaveDirectory = setting.ImageSaveDirectory.FullName;
            NotificationText = string.Empty;

            PropertyChanged += SettingViewModel_PropertyChanged;
            SaveConfigCommand = new RelayCommand(
                async obj =>
                    {
                        NotificationText = string.Empty;
                        Status = SettingStatusType.Checking;
                        Status = (await setting.Save(
                            EmailAddress, Password, new System.IO.DirectoryInfo(ImageSaveDirectory)))
                            ? SettingStatusType.Normal : SettingStatusType.Error;

                        if (Status == SettingStatusType.Error)
                        {
                            NotificationText = "エラーが発生しました。メールアドレスやパスワード、画像保存先に異常がある事が考えられます。";
                            return;
                        }
                        IsModified = false;
                        IsExpanded = false;
                    });
            CancelConfigCommand = new RelayCommand(
                obj =>
                    {
                        EmailAddress = setting.EmailAddress;
                        Password = setting.Password;
                        ImageSaveDirectory = setting.ImageSaveDirectory.FullName;
                        NotificationText = string.Empty;
                        IsModified = false;
                        IsExpanded = false;
                    });
        }
 public ImageDownloader(ImageDownloaderContainer container, ImageInfo imageInfo)
 {
     _container = container;
     ImageInfo = imageInfo;
     Status = DownloadStatus.Unloaded;
 }