Esempio n. 1
0
        async internal void TestPath()
        {
            if (SelectedPath == null)
            {
                MsgBx.Show("", "There isn't a selected path, click on a path", MsgBxPicture.Info);
                return;
            }

            ViewState = ViewStates.InTestCalculation;
            StringBuilder result = new StringBuilder();

            Task <bool> taskThread = Task <bool> .Factory.StartNew(() => SelectedPath.CalculateFileList());

            await taskThread;

            if (taskThread.Result == false)
            {
                MsgBx.Show("", "Selected path is not valid", MsgBxPicture.Info);
                return;
            }

            foreach (string file in SelectedPath.FilesSelected)
            {
                result.Append(file + Util.crLf);
            }

            TestResult = result.ToString().RemoveFinal(Util.crLf);

            ViewState = ViewStates.InTestResultShowing;
        }
Esempio n. 2
0
        public void writeConfiguration()
        {
            try {
                TextWriter Writer = new StreamWriter(CONFIG_FILE);
                XElement   root   = new XElement("AVSyncer");

                XElement xSelectPaths = new XElement("SelectPaths");
                foreach (string s in selectpaths)
                {
                    XElement xPath = new XElement("Path");
                    xPath.SetValue(s);
                    xSelectPaths.Add(xPath);
                }
                root.Add(xSelectPaths);
                XElement xSelectedPath = new XElement("SelectedPath");
                xSelectedPath.Value = SelectedPath.ToString();
                root.Add(xSelectedPath);

                XElement xFormattings = new XElement("Formattings");
                foreach (string s in formattings)
                {
                    string vs = "";
                    foreach (char ic in System.IO.Path.GetInvalidFileNameChars())
                    {
                        vs = s.Replace(ic.ToString(), "");
                    }
                    XElement xFormat = new XElement("Format");
                    xFormat.SetAttributeValue("text", vs);
                    xFormattings.Add(xFormat);
                }
                root.Add(xFormattings);
                XElement xSelectedFormat = new XElement("SelectedFormat");
                xSelectedFormat.Value = SelectedFormat.ToString();
                root.Add(xSelectedFormat);

                XElement xStructs = new XElement("Structs");
                foreach (string s in structs)
                {
                    string vs = "";
                    foreach (char ic in System.IO.Path.GetInvalidPathChars())
                    {
                        vs = s.Replace(ic.ToString(), "");
                    }
                    vs = vs.Replace("..", "");
                    XElement xStruct = new XElement("Struct");
                    xStruct.SetAttributeValue("text", vs);
                    xStructs.Add(xStruct);
                }
                root.Add(xStructs);
                XElement xSelectedStruct = new XElement("SelectedStruct");
                xSelectedStruct.Value = SelectedStruct.ToString();
                root.Add(xSelectedStruct);

                Writer.Write(root);
                Writer.Close();
            } catch (Exception ex) {
                Console.WriteLine(ex);
            }
        }
Esempio n. 3
0
 public override void RenderBeginTag(HtmlTextWriter writer)
 {
     writer.AddAttribute("data-date", ContextBase.Request.SelectedDate().ToString("yyyy-MM-dd"));
     writer.AddAttribute("data-month", GetSelectedMonth().ToString("yyyy-MM-dd"));
     //writer.AddAttribute("data-returnto", ReturnTo);
     writer.AddAttribute("data-pathinfo", SelectedPath.ToString());
     writer.AddAttribute("data-headers", string.Join(",", ColumnHeaders));
     base.RenderBeginTag(writer);
 }
Esempio n. 4
0
        private async void Initializer()
        {
            IsBusy = true;
            //获取远程磁盘
            //DriveInfo[] drives =await _hcdzClient.GetDrives();
            //if (drives!=null)
            //{
            //    DriveInfoItems = new ObservableCollection<DriveInfo>(drives);
            //}
            var models = new ObservableCollection <DriveInfoModel>();

            var drives = await _hcdzClient.GetDrives();

            if (drives == null)
            {
                return;
            }
            //drives = drives.Take(2).ToArray();
            foreach (var item in drives)
            {
                var drive = new DriveInfoModel()
                {
                    AvailableFreeSpace     = item.AvailableFreeSpace,
                    AvailableFreeSpaceText = ByteFormatter.ToString(item.AvailableFreeSpace) + " 可用",
                    DriveFormat            = item.DriveFormat,
                    DriveType          = item.DriveType,
                    IsReady            = item.IsReady,
                    Name               = item.Name,
                    RootDirectory      = item.RootDirectory,
                    TotalFreeSpace     = item.TotalFreeSpace,
                    TotalFreeSpaceText = ByteFormatter.ToString(item.TotalFreeSpace),
                    TotalSize          = item.TotalSize,
                    TotalSizeText      = "共" + ByteFormatter.ToString(item.TotalSize),
                    VolumeLabel        = string.IsNullOrEmpty(item.VolumeLabel) ? "本地磁盘 " : item.VolumeLabel,
                    Percent            = 100.0 - (int)(item.AvailableFreeSpace * 100.0 / item.TotalSize),
                    DriveLetter        = item.Name.Replace("\\", "")
                };
                drive.NameDesc = drive.VolumeLabel + string.Format("({0}:)", item.ToString().Replace(":", "").Replace("\\", ""));
                models.Add(drive);
            }
            DriveInfoItems = models;
            var items = await List();

            if (items != null)
            {
                DirectoryItems = new ObservableCollection <DirectoryInfoModel>(items);
            }
            SelectedPath = DriveInfoItems.FirstOrDefault()?.Name;
            EnableValue  = DriveInfoItems.FirstOrDefault()?.AvailableFreeSpaceText;
            if (!string.IsNullOrEmpty(SelectedPath))
            {
                OnLoadSelectDir(SelectedPath.Substring(0, 3));
            }

            IsBusy = false;
        }
Esempio n. 5
0
        private async void GetAllTimeDataForPath()
        {
            var data = await SelectedPath.GetAllTimeDataForPath();

            var window = new ApiDataWindow(data)
            {
                Owner = _owner
            };

            window.Show();
        }
Esempio n. 6
0
        private async void GetTodayDataForPath()
        {
            var data = await SelectedPath.GetTodayDataForPath();

            var window = new ApiDataWindow(new Dictionary <DateTime, List <TripModel> > {
                { DateTime.Today, data }
            })
            {
                Owner = _owner
            };

            window.Show();
        }
Esempio n. 7
0
            /// <summary>
            /// Considered equal when the path, builder and parser are equal.
            /// Note: value is ignored in equality test.
            /// </summary>
            public bool Equals(IPartView other)
            {
                if (other == null || !(other is IPartViewNode))
                {
                    return(false);
                }

                var node = (IPartViewNode)other;

                return(SelectedPath.Equals(node.SelectedPath) &&
                       SelectedBuilder.Equals(node.SelectedBuilder) &&
                       dbqf.Parsers.Parser.Equals(Parser, node.Parser));
            }
Esempio n. 8
0
        public static void MoveDown(BaseController Controller)
        {
            // --------------------------------------------------------
            // Move all selected items down
            // --------------------------------------------------------
            List <string> PathsToMove = new List <string>();

            foreach (string SelectedPath in Controller.SelectedPaths)
            {
                PathsToMove.Add(SelectedPath.Substring(SelectedPath.LastIndexOf(XmlHelper.Delimiter) + 1));
            }
            ApsimFile.Component Parent = Controller.ApsimData.Find(Controller.SelectedPaths[0]).Parent;
            Parent.MoveDown(PathsToMove);
        }
Esempio n. 9
0
        /// <summary>
        /// AdvancedPart considered equal when the path, builder and parser are equal.
        /// Note: value is ignored in equality test.
        /// </summary>
        /// <param name="other"></param>
        /// <returns></returns>
        public bool Equals(IPartView other)
        {
            if (other == null || !(other is IPartViewNode))
            {
                return(false);
            }

            var node = (IPartViewNode)other;

            return(SelectedPath.Equals(node.SelectedPath) &&
                   SelectedBuilder.Equals(node.SelectedBuilder) &&
                   Parser.Equals(Parser, node.Parser) &&
                   (Values != null ? Values.Equals(node.Values) : true));
        }
Esempio n. 10
0
        private bool ItemEnterKeyCanExecute(object o) => SelectedPath != null; // == throw except

        #endregion


        #region func
        private void EnterDirectory()
        {
            if (SelectedPath == null)
            {
                return;                      //unless exception
            }
            if (SelectedPath.StartsWith(Resources.DriveSign))
            {
                CurrentPath = Path.Combine(CurrentPath, SelectedPath.Substring(3)); //delete 3 chars path
                UpdateCurrentPathContent();
            }
            else if (SelectedPath == Resources.PreviousDirectory) //back
            {
                CurrentPath = Path.GetDirectoryName(CurrentPath);
                UpdateCurrentPathContent();
            }
        }
        /// <summary>
        /// This method generates the topmost button, the "back"-button
        /// </summary>
        private void GenerateBackButton()
        {
            //calculate the path of the parent folder by removing the last folder level
            //and add a back-button
            var path = SelectedPath.Split("\\");

            StringBuilder builder = new StringBuilder();

            builder.Append(path[0]);
            for (int i = 1; i < path.Length - 1; i++)
            {
                builder.Append("\\");
                builder.Append(path[i]);
            }
            PreviousPath = builder.ToString();
            CurrentFolderContent.Add("btn_back", new FolderResource(PreviousPath, "...", true));
        }
Esempio n. 12
0
 private void EnterDirectory()
 {
     if (SelectedPath == null)
     {
         return;
     }
     if (SelectedPath.StartsWith(Resources.DriveSign))
     {
         CurrentPath = Path.Combine(CurrentPath, SelectedPath.Substring(4));
         UpdateCurrentPathContent();
     }
     else if (SelectedPath == Resources.ParentDirectory)
     {
         CurrentPath = Path.GetDirectoryName(CurrentPath);
         UpdateCurrentPathContent();
     }
 }
Esempio n. 13
0
        static public void ExportSelectedToFile(string FileName, BaseController Controller)
        {
            Cursor.Current = Cursors.WaitCursor;

            File.Delete(FileName);
            DataTable Table = new DataTable("SoilData");
            int       Row   = 0;

            foreach (string SelectedPath in Controller.SelectedPaths)
            {
                ApsimFile.Component SoilComponent = Controller.ApsimData.Find(SelectedPath);
                XmlDocument         Doc           = new XmlDocument();
                Doc.LoadXml(SoilComponent.FullXML());
                CreateTableFromData(Doc.DocumentElement, Table, SelectedPath.Replace("/", "\\"), ref Row);
            }
            ExcelHelper.SendDataToSheet(FileName, "SoilData", Table);
            Cursor.Current = Cursors.Default;
        }
Esempio n. 14
0
 private void ComputeHash()
 {
     unchecked
     {
         _hash = 13;
         if (SelectedPath != null)
         {
             _hash = (_hash * 7) + SelectedPath.GetHashCode();
         }
         if (SelectedBuilder != null)
         {
             _hash = (_hash * 7) + SelectedBuilder.GetHashCode();
         }
         if (Parser != null)
         {
             _hash = (_hash * 7) + Parser.GetHashCode();
         }
     }
 }
Esempio n. 15
0
 public override int GetHashCode()
 {
     unchecked
     {
         int hash = 13;
         if (SelectedPath != null)
         {
             hash = (hash * 7) + SelectedPath.GetHashCode();
         }
         if (SelectedBuilder != null)
         {
             hash = (hash * 7) + SelectedBuilder.GetHashCode();
         }
         if (Parser != null)
         {
             hash = (hash * 7) + Parser.GetHashCode();
         }
         return(hash);
     }
 }
Esempio n. 16
0
        protected override IntPtr HookProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam)
        {
            switch (msg)
            {
            case BrowseForFolderMessages.BFFM_INITIALIZED:
                // Установка начального пути
                if (SelectedPath.IsValid())
                {
                    NativeMethods.SendMessage(new HandleRef(null, hwnd), BrowseForFolderMessages.BFFM_SETSELECTIONW, 1, SelectedPath);
                }
                // Центрирование окна (не работает пока, т.к. выполняется изменение размеров после)
                // NativeMethods.CenterTo(hwnd, IntPtr.Zero);
                break;

            default:
                return(base.HookProc(hwnd, msg, wParam, lParam));
            }

            return((IntPtr)0);
        }
Esempio n. 17
0
        public void BeginSlideShow()
        {
            // Reset Data
            CurrentPicture = null;
            ImagePaths.Clear();

            // Validate SelectedPath
            var directories = SelectedPath.Split('%');

            foreach (var directory in directories)
            {
                if (!Directory.Exists(directory))
                {
                    MessageBox.Show("A specified file path is not a real directory. Please ammend.", "Path Not Found", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
            }

            // Load Files
            var files = new List <string>();

            foreach (var directory in directories)
            {
                LoadFiles(directory, ref files);
            }
            foreach (var file in files)
            {
                ImagePaths.Add(file);
            }

            // Shuffle
            ImagePaths.Shuffle();

            // TODO: Check speedy loading

            // TODO: settings

            // Progress
            SlideshowProgress(null, null);
        }
Esempio n. 18
0
        private void btnOpenDirectory_Click(object sender, EventArgs e)
        {
            using (var dialog = new FolderBrowserDialog())
            {
                if (dialog.ShowDialog() == DialogResult.OK)
                {
                    SelectedPath = txtDirectory.Text = dialog.SelectedPath;

                    if (SelectedPath.Contains("fontawesome"))
                    {
                        cboPack.SelectedIndex = 0;
                    }
                    else if (SelectedPath.Contains("material"))
                    {
                        cboPack.SelectedIndex = 1;
                    }
                    else if (SelectedPath.Contains("open-iconic"))
                    {
                        cboPack.SelectedIndex = 2;
                    }
                }
            }
        }
Esempio n. 19
0
        private void Render()
        {
            try
            {
                string[] parts = SelectedPath?.Split('/', '\\');
                if (parts == null || parts.Length < 0)
                {
                    return;
                }

                for (int i = 0; i < parts.Length; i++)
                {
                    if (string.IsNullOrEmpty(parts[i]))
                    {
                        continue;
                    }

                    Button b = new Button
                    {
                        Style   = Application.Current.TryFindResource(typeof(Button)) as Style,
                        ToolTip = BuildPathString(parts, i),
                        Content = parts[i]
                    };
                    b.Click += B_Click;
                    BreadCumbs.Children.Add(b);

                    TextBlock div = new TextBlock();
                    div.Text = @"\";
                    BreadCumbs.Children.Add(div);
                }
            }
            catch (Exception ex)
            {
                OnNavigationException?.Invoke(this, ex.Message);
            }
        }
Esempio n. 20
0
        private void Render(bool HiddenHasChanged = false)
        {
            if (string.IsNullOrEmpty(SelectedPath))
            {
                return;
            }

            if (SelectedPath != FileListView.HomePath)
            {
                var parts = SelectedPath.Split('\\', '/');
                var root  = Directory.GetDirectoryRoot(SelectedPath);
                if (root != _lastdriveLetter || HiddenHasChanged)
                {
                    Items.Clear();
                    RenderFolderView($"{parts[0]}\\");
                    _lastdriveLetter = root;
                }
                SelectNodePath(SelectedPath);
            }
            else
            {
                Items.Clear();
            }
        }
        private void SendEmail(string zipPath)
        {
            if (!string.IsNullOrEmpty(SendItSettings.Singleton.MailServerPath))
            {
                if (File.Exists(SendItSettings.Singleton.MailServerPath))
                {
                    string expectedProcessName = Path.GetFileNameWithoutExtension(SendItSettings.Singleton.MailServerPath);
                    var    serverIsRunning     = System.Diagnostics.Process.GetProcessesByName(expectedProcessName).Length > 0;
                    if (!serverIsRunning)
                    {
                        string fileName = Path.GetFileName(SendItSettings.Singleton.MailServerPath);
                        SendingStatus = "Starting " + fileName + "...";
                        ProcessStartInfo startInfo = new ProcessStartInfo(SendItSettings.Singleton.MailServerPath);
                        startInfo.WorkingDirectory = Path.GetDirectoryName(SendItSettings.Singleton.MailServerPath);
                        startInfo.UseShellExecute  = true;
                        var proc = Process.Start(startInfo);
                        Thread.Sleep(5000);
                        serverIsRunning = System.Diagnostics.Process.GetProcessesByName(expectedProcessName).Length > 0;
                        if (!serverIsRunning)
                        {
                            throw new ApplicationException("SendIt could not start email server (" + fileName +
                                                           "). Restart your computer and try again.");
                        }
                    }
                }
            }
            //don't worry about certificates
            ServicePointManager.ServerCertificateValidationCallback =
                delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
            { return(true); };

            var client = new System.Net.Mail.SmtpClient(SendItSettings.Singleton.SmtpClient,
                                                        SendItSettings.Singleton.SmtpClientPort);

            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.EnableSsl      = SendItSettings.Singleton.SmtpUsesSsl;

            client.Credentials = new NetworkCredential(SendItSettings.Singleton.SmptLogin,
                                                       SendItSettings.Singleton.SmtpPassword);
            MailAddress from = new MailAddress(SendItSettings.Singleton.FromAddress,
                                               SendItSettings.Singleton.FromAddress);
            MailAddress to      = new MailAddress(SendItSettings.Singleton.ToAddress, SendItSettings.Singleton.ToAddress);
            MailMessage message = new MailMessage(from, to);

            message.Subject = SelectedPath.ToString();
            Attachment file = new Attachment(zipPath);

            message.Attachments.Add(file);
            //client.SendCompleted += new SendCompletedEventHandler(client_SendCompleted);

            SendingStatus = "Giving Message To Mail Server...";
            try
            {
                client.Send(message);
            }
            catch (Exception error)
            {
                MessageBox.Show("SendIt could not talk the email server/program. You might try restarting your computer before trying again.\r\n" + error.Message, "SendIt Problem", MessageBoxButtons.OK, MessageBoxIcon.Error);
                throw;
            }
        }
Esempio n. 22
0
 private bool CanStart()
 {
     return(!SelectedPath.IsNullOrEmpty() && !IsRunning);
 }
Esempio n. 23
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="w">The window</param>
        /// <param name="Client">The client</param>
        public IncomingTransferViewModel(ConnectionWindow w, TcpClient Client)
        {
            //------------------------------------
            //  Init
            //------------------------------------

            PrivateSender = false;
            TheWindow     = w;
            SelectFolder  = new ChooseFolder(this);

            //------------------------------------
            //  Add the transfer but don't start it yet
            //------------------------------------

            List <Task> Transfers = (List <Task>)Application.Current.Properties["Transfers"];

            Transfers.Add(Task.Run(() =>
            {
                Receive Receiver = new Receive(Client);
                if (!Receiver.ParseHello())
                {
                    //  Not a valid request? then just close the window (NOTE: it is still hidden at this point)
                    TheWindow.Dispatcher.InvokeAsync(() =>
                    {
                        TheWindow.Close();
                    });
                    return;
                }
                else
                {
                    //  Open the window to ask user to accept or reject
                    TheWindow.Dispatcher.InvokeAsync(() =>
                    {
                        TheWindow.InitializeComponent();
                        TheWindow.DataContext = this;
                        TheWindow.Topmost     = true;
                        TheWindow.Show();
                        TheWindow.Activate();
                        TheWindow.Topmost = false;
                    });
                }

                //------------------------------------
                //  Render data
                //------------------------------------

                if (Receiver.SenderUser != null)
                {
                    UserRequestText    = Receiver.SenderUser.Name + " wants to send you";
                    UserProfilePicture = Receiver.SenderUser.PicBytes;
                }
                else
                {
                    UserRequestText = "A private user wants to send you";
                    PrivateSender   = true;
                }

                if (!Receiver.IsFolder)
                {
                    FileName         = Receiver.FileName + "." + Receiver.FileExtension;
                    UserRequestText += " a file:";
                    _Size            = Receiver.FileSize;
                    Extension        = Receiver.FileExtension;
                }
                else
                {
                    string[] _name   = Receiver.FileName.Split('/');
                    FileName         = _name[0];
                    UserRequestText += " a folder:";
                }

                //------------------------------------
                //  Wait for user's confirmation
                //------------------------------------

                lock (this)
                {
                    if (Status == Reply.UNANSWERED)
                    {
                        Monitor.Wait(this);
                    }
                }

                //------------------------------------
                //  Deal with user's decision
                //------------------------------------

                if (!SelectedPath.Equals(String.Empty))
                {
                    Receiver.FolderLocation = SelectedPath;
                }

                if (Status == Reply.ACCEPTED)
                {
                    Receiver.Start();
                }
                else
                {
                    Receiver.Reject(true);
                }
            }));

            Accept = new AcceptTransfer(this);
            Reject = new RejectTransfer(this);
        }
Esempio n. 24
0
 public string GetCorrectSelectedPath() => SelectedPath.StartsWith(Resources.DriveSign) ? SelectedPath.Substring(Resources.DriveSign.Length) : SelectedPath;