예제 #1
0
        private void RenameInput_TextChanged(object sender, TextChangedEventArgs e)
        {
            var textBox = sender as TextBox;

            if (FilesystemHelpers.ContainsRestrictedCharacters(textBox.Text))
            {
                RenameDialogSymbolsTip.Opacity = 1;
                IsPrimaryButtonEnabled         = false;
                return;
            }
            else
            {
                RenameDialogSymbolsTip.Opacity = 0;
                IsPrimaryButtonEnabled         = true;
            }

            if (FilesystemHelpers.ContainsRestrictedFileName(textBox.Text))
            {
                IsPrimaryButtonEnabled = false;
            }
            else
            {
                IsPrimaryButtonEnabled = true;
            }
        }
예제 #2
0
        private void GridViewTextBoxItemName_TextChanged(object sender, TextChangedEventArgs e)
        {
            var textBox = sender as TextBox;

            if (FilesystemHelpers.ContainsRestrictedCharacters(textBox.Text))
            {
                FileNameTeachingTip.IsOpen = true;
            }
            else
            {
                FileNameTeachingTip.IsOpen = false;
            }
        }
예제 #3
0
        private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            var textBox = sender as TextBox;

            if (FilesystemHelpers.ContainsRestrictedCharacters(textBox.Text))
            {
                FileNameTeachingTip.Visibility = Visibility.Visible;
                FileNameTeachingTip.IsOpen     = true;
            }
            else
            {
                FileNameTeachingTip.IsOpen     = false;
                FileNameTeachingTip.Visibility = Visibility.Collapsed;
            }
        }
예제 #4
0
        static void fswA_Trigger(object sender, FileSystemEventArgs e)
        {
            try
            {
                string ext = Path.GetExtension(e.FullPath).Replace(".", "").ToLower();

                if (ext == "")
                {
                    ext = "dir";
                }
                if (FilesystemHelpers.filterCommonOperations(e.FullPath))
                {
                    log4net.GlobalContext.Properties["FileExtension"] = Cryptography.EncRijndael(ext);
                    log4net.GlobalContext.Properties["DriveUnit"]     = Cryptography.EncRijndael((Path.GetPathRoot(e.FullPath)));
                    log4net.GlobalContext.Properties["ChangeType"]    = Cryptography.EncRijndael(e.ChangeType.ToString());
                    log4net.GlobalContext.Properties["FullPath"]      = Cryptography.EncRijndael(TextHelpers.RemoveDiacritics(e.FullPath));
                    log4net.GlobalContext.Properties["AgentID"]       = Settings.AgentID;
                    log4net.GlobalContext.Properties["IPAddress"]     = Network.GetAllLocalIPv4(NetworkInterfaceType.Ethernet).FirstOrDefault();
                    logFsw.Info("FilesystemEvent");
                }
            }
            catch { };
        }
예제 #5
0
        public static DynamicDialog GetFor_RenameDialog()
        {
            DynamicDialog dialog    = null;
            TextBox       inputText = new TextBox()
            {
                Height          = 35d,
                PlaceholderText = "RenameDialogInputText/PlaceholderText".GetLocalized()
            };

            TextBlock tipText = new TextBlock()
            {
                Text         = "RenameDialogSymbolsTip/Text".GetLocalized(),
                Margin       = new Windows.UI.Xaml.Thickness(0, 0, 4, 0),
                TextWrapping = Windows.UI.Xaml.TextWrapping.Wrap,
                Opacity      = 0.0d
            };

            inputText.TextChanged += (s, e) =>
            {
                var textBox = s as TextBox;
                dialog.ViewModel.AdditionalData = textBox.Text;

                if (FilesystemHelpers.ContainsRestrictedCharacters(textBox.Text))
                {
                    dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Cancel;
                    tipText.Opacity = 1.0d;
                    return;
                }
                else if (!string.IsNullOrWhiteSpace(textBox.Text))
                {
                    dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Primary | DynamicDialogButtons.Cancel;
                }
                else
                {
                    dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Cancel;
                }

                tipText.Opacity = 0.0d;
            };

            dialog = new DynamicDialog(new DynamicDialogViewModel()
            {
                TitleText      = "RenameDialog/Title".GetLocalized(),
                SubtitleText   = null,
                DisplayControl = new Grid()
                {
                    MinWidth = 300d,
                    Children =
                    {
                        new StackPanel()
                        {
                            Orientation = Orientation.Vertical,
                            Spacing     = 4d,
                            Children    =
                            {
                                inputText,
                                tipText
                            }
                        }
                    }
                },
                PrimaryButtonAction = (vm, e) =>
                {
                    vm.HideDialog(); // Rename successful
                },
                PrimaryButtonText     = "RenameDialog/PrimaryButtonText".GetLocalized(),
                CloseButtonText       = "RenameDialog/SecondaryButtonText".GetLocalized(),
                DynamicButtonsEnabled = DynamicDialogButtons.Cancel,
                DynamicButtons        = DynamicDialogButtons.Primary | DynamicDialogButtons.Cancel
            });

            return(dialog);
        }
예제 #6
0
        public static DynamicDialog GetFor_RenameDialog()
        {
            DynamicDialog dialog    = null;
            TextBox       inputText = new TextBox()
            {
                Height          = 35d,
                PlaceholderText = "RenameDialogInputText/PlaceholderText".GetLocalized()
            };

            TextBlock tipText = new TextBlock()
            {
                Text         = "RenameDialogSymbolsTip/Text".GetLocalized(),
                Margin       = new Windows.UI.Xaml.Thickness(0, 0, 4, 0),
                TextWrapping = Windows.UI.Xaml.TextWrapping.Wrap,
                Opacity      = 0.0d
            };

            inputText.TextChanged += (s, e) =>
            {
                var textBox = s as TextBox;
                dialog.ViewModel.AdditionalData = textBox.Text;

                if (FilesystemHelpers.ContainsRestrictedCharacters(textBox.Text))
                {
                    dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Cancel;
                    tipText.Opacity = 1.0d;
                    return;
                }
                else if (!string.IsNullOrWhiteSpace(textBox.Text))
                {
                    dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Primary | DynamicDialogButtons.Cancel;
                }
                else
                {
                    dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Cancel;
                }

                tipText.Opacity = 0.0d;
            };

            inputText.Loaded += (s, e) =>
            {
                // dispatching to the ui thread fixes an issue where the primary dialog button would steal focus
                _ = CoreApplication.MainView.DispatcherQueue.EnqueueAsync(() => inputText.Focus(Windows.UI.Xaml.FocusState.Programmatic));
            };

            dialog = new DynamicDialog(new DynamicDialogViewModel()
            {
                TitleText      = "RenameDialog/Title".GetLocalized(),
                SubtitleText   = null,
                DisplayControl = new Grid()
                {
                    MinWidth = 300d,
                    Children =
                    {
                        new StackPanel()
                        {
                            Spacing  = 4d,
                            Children =
                            {
                                inputText,
                                tipText
                            }
                        }
                    }
                },
                PrimaryButtonAction = (vm, e) =>
                {
                    vm.HideDialog(); // Rename successful
                },
                PrimaryButtonText     = "RenameDialog/PrimaryButtonText".GetLocalized(),
                CloseButtonText       = "Cancel".GetLocalized(),
                DynamicButtonsEnabled = DynamicDialogButtons.Cancel,
                DynamicButtons        = DynamicDialogButtons.Primary | DynamicDialogButtons.Cancel
            });

            return(dialog);
        }
예제 #7
0
        public static DynamicDialog GetFor_RenameDialog()
        {
            DynamicDialog dialog    = null;
            TextBox       inputText = new TextBox()
            {
                Height          = 35d,
                PlaceholderText = "RenameDialogInputText/PlaceholderText".GetLocalized()
            };

            TextBlock tipText = new TextBlock()
            {
                Text         = "RenameDialogSymbolsTip/Text".GetLocalized(),
                Margin       = new Windows.UI.Xaml.Thickness(0, 0, 4, 0),
                TextWrapping = Windows.UI.Xaml.TextWrapping.Wrap,
                Opacity      = 0.0d
            };

            inputText.BeforeTextChanging += async(textBox, args) =>
            {
                if (FilesystemHelpers.ContainsRestrictedCharacters(args.NewText))
                {
                    args.Cancel = true;
                    await inputText.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
                    {
                        var oldSelection       = textBox.SelectionStart + textBox.SelectionLength;
                        var oldText            = textBox.Text;
                        textBox.Text           = FilesystemHelpers.FilterRestrictedCharacters(args.NewText);
                        textBox.SelectionStart = oldSelection + textBox.Text.Length - oldText.Length;
                        tipText.Opacity        = 1.0d;
                    });
                }
                else
                {
                    dialog.ViewModel.AdditionalData = args.NewText;

                    if (!string.IsNullOrWhiteSpace(args.NewText))
                    {
                        dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Primary | DynamicDialogButtons.Cancel;
                    }
                    else
                    {
                        dialog.ViewModel.DynamicButtonsEnabled = DynamicDialogButtons.Cancel;
                    }

                    tipText.Opacity = 0.0d;
                }
            };

            inputText.Loaded += (s, e) =>
            {
                // dispatching to the ui thread fixes an issue where the primary dialog button would steal focus
                _ = inputText.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal,
                                                  () => inputText.Focus(Windows.UI.Xaml.FocusState.Programmatic));
            };

            dialog = new DynamicDialog(new DynamicDialogViewModel()
            {
                TitleText      = "RenameDialog/Title".GetLocalized(),
                SubtitleText   = null,
                DisplayControl = new Grid()
                {
                    MinWidth = 300d,
                    Children =
                    {
                        new StackPanel()
                        {
                            Spacing  = 4d,
                            Children =
                            {
                                inputText,
                                tipText
                            }
                        }
                    }
                },
                PrimaryButtonAction = (vm, e) =>
                {
                    vm.HideDialog(); // Rename successful
                },
                PrimaryButtonText     = "RenameDialog/PrimaryButtonText".GetLocalized(),
                CloseButtonText       = "Cancel".GetLocalized(),
                DynamicButtonsEnabled = DynamicDialogButtons.Cancel,
                DynamicButtons        = DynamicDialogButtons.Primary | DynamicDialogButtons.Cancel
            });

            return(dialog);
        }