コード例 #1
0
        private void imageListView_ItemClick(object sender, ItemClickEventArgs e)
        {
            PhotoDownloader.PreloadPictures(m_post, true);

            List <string> _files = new List <string>();

            foreach (var _file in imageListView.Items)
            {
                _files.Add(_file.FileName);
            }

            using (PhotoView _photoView = new PhotoView(m_imageAttachments, m_filePathOrigins, m_filePathMediums, m_filesMapping, int.Parse(e.Item.Tag.ToString())))
            {
                _photoView.ShowDialog();
            }
        }
コード例 #2
0
        private void Set_Pictures()
        {
            PhotoDownloader.PreloadPictures(m_post, true);

            imageListView.Items.Clear();

            m_filePathOrigins = new List <string>();
            m_filePathMediums = new List <string>();

            m_imageAttachments = new List <Attachment>();

            foreach (Attachment _a in Post.attachments)
            {
                if (_a.type == "image")
                {
                    m_imageAttachments.Add(_a);
                }
            }

            if (m_imageAttachments.Count == 0)
            {
                return;
            }

            m_filesMapping.Clear();

            foreach (Attachment _attachment in m_imageAttachments)
            {
                string _urlO      = string.Empty;
                string _fileNameO = string.Empty;
                Main.Current.RT.REST.attachments_getRedirectURL_Image(_attachment, "origin", out _urlO, out _fileNameO, false);

                string _localFileO = Main.GCONST.CachePath + _fileNameO;

                m_filePathOrigins.Add(_localFileO);

                if (!m_filesMapping.ContainsKey(_fileNameO))
                {
                    if ((_attachment.file_name != string.Empty) && (!_attachment.file_name.Contains("?")))
                    {
                        m_filesMapping.Add(_fileNameO, _attachment.file_name);
                    }
                }

                string _urlM      = string.Empty;
                string _fileNameM = string.Empty;
                Main.Current.RT.REST.attachments_getRedirectURL_Image(_attachment, "medium", out _urlM, out _fileNameM, false);

                string _localFileM = Main.GCONST.CachePath + _fileNameM;

                m_filePathMediums.Add(_localFileM);

                if (!m_filesMapping.ContainsKey(_fileNameM))
                {
                    if ((_attachment.file_name != string.Empty) && (!_attachment.file_name.Contains("?")))
                    {
                        m_filesMapping.Add(_fileNameM, _attachment.file_name);
                    }
                }
            }

            timer.Interval = ((m_imageAttachments.Count / 200) + 3) * 1000;

            if (!FillImageListView(true))
            {
                timer.Enabled = true;
            }
        }
コード例 #3
0
 public async Task Download(List <string> list) // лист содержит id фоток
 {
     PhotoDownloader downloader = new PhotoDownloader(Server, User);
     await downloader.DownloadAsync(list);
 }