Example #1
0
 /// <summary>
 ///     Handler for the event when the mouse is hovered on top of this element.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OnTreeViewPreviewMouseMove(object sender, MouseEventArgs e)
 {
     Debug.Assert(ExplorerTreeView != null, "Why ExplorerTreeView is null");
     if (ExplorerTreeView != null &&
         _isTreeViewMouseDown &&
         !_isDragDrop &&
         !ExplorerTreeView.IsMouseCaptured)
     {
         try
         {
             // capture the mouse event so no other elements got event notification until we release it.
             ExplorerTreeView.CaptureMouse();
             if (_selectedExplorerEFElement != null &&
                 _selectedExplorerEFElement.ModelItem != null)
             {
                 var dataObject = GetClipboardObjectForExplorerItem(_selectedExplorerEFElement);
                 if (dataObject != null)
                 {
                     _isDragDrop = true;
                     DragDrop.DoDragDrop(ExplorerTreeView, dataObject, DragDropEffects.All);
                 }
             }
         }
         finally
         {
             _isDragDrop          = false;
             _isTreeViewMouseDown = false;
             ExplorerTreeView.ReleaseMouseCapture();
         }
     }
 }
Example #2
0
 /// <summary>
 /// Konstruktor für einen Verzeichniskoten innerhalb des ExplorerTreeViews. Der Name des Knotens entspricht dem Verzeichnisnamen aus der übergebenen DirInfo.
 /// </summary>
 /// <param name="treeView">TreeView Objekt, an das ein Verzeichnisknoten angehängt werden soll.</param>
 /// <param name="DirInfo">DirectoryInfo Objekt für das Verzeichnis, für das ein DirectoryNode erzeugt werden soll.</param>
 public DirectoryNode(ExplorerTreeView treeView, DirectoryInfo DirInfo) : base(DirInfo.Name)
 {
     this.soDirInfo          = DirInfo;
     this.Tag                = DirInfo.FullName;
     this.ImageIndex         = 6;
     this.SelectedImageIndex = this.ImageIndex;
     treeView.Nodes.Add(this);
     Virtualize();
 }
Example #3
0
 /// <summary>
 /// Konstruktor für den Rootknoten des Treeviews.
 /// </summary>
 /// <param name="treeView">TreeView Objekt, an den der Rootknoten erzeugt werden soll.</param>
 /// <param name="NodeName">Name des Rootknotens.</param>
 public DirectoryNode(ExplorerTreeView treeView, string NodeName)
 {
     this.soDirInfo          = null;
     this.Tag                = "";
     this.ImageIndex         = 0;
     this.Text               = NodeName;
     this.SelectedImageIndex = 7;
     treeView.Nodes.Add(this);
     Virtualize();
 }
Example #4
0
        public SETreeView()
        {
            ExplorerTreeView.ApplyTreeViewThemeStyles(this);

            this._imageListDrag                  = new ImageList();
            this._imageListDrag.ColorDepth       = System.Windows.Forms.ColorDepth.Depth32Bit;
            this._imageListDrag.ImageSize        = new System.Drawing.Size(16, 16);
            this._imageListDrag.TransparentColor = System.Drawing.Color.Transparent;

            _timer.Interval = 200;
            _timer.Tick    += new EventHandler(timer_Tick);
        }
Example #5
0
        internal bool SelectTreeViewItem(ExplorerEFElement explorerElement)
        {
            if (explorerElement != null)
            {
                explorerElement.ExpandTreeViewToMe();
                ExplorerTreeView.UpdateLayout();
                var tvi = FocusExplorerEFElement(explorerElement, false);
                Debug.Assert(null != tvi, "Could not find TreeViewItem for ExplorerEFElement " + explorerElement.Name);
                return(null != tvi);
            }

            return(false);
        }
Example #6
0
 /// <summary>
 ///     Handler for the event when the any mouse button is release while the mouse pointer is over this element.
 ///     This is just to ensure that we release mouse capture and reset _isTreeViewMouseDown flag.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OnTreeViewPreviewMouseUp(object sender, MouseButtonEventArgs e)
 {
     Debug.Assert(ExplorerTreeView != null, "Why ExplorerTreeView is null?");
     if (ExplorerTreeView != null)
     {
         try
         {
             ExplorerTreeView.ReleaseMouseCapture();
         }
         finally
         {
             _isTreeViewMouseDown = false;
         }
     }
 }
Example #7
0
        private void MenuItemDeactivateTag_Click(object sender, RoutedEventArgs e)
        {
            if (audioFileViewModel != null)
            {
                var tagType = audioFileViewModel.TagType.ToString();
                if (MessageBox.Show($"You are trying to remove {tagType} " +
                                    "Tag from file. After that you wouldn't be able to " +
                                    "restore tag. Are you sure whether remove that tag or not?",
                                    "Attention",
                                    MessageBoxButton.OKCancel,
                                    MessageBoxImage.Warning) == MessageBoxResult.Cancel)
                {
                    return;
                }

                var fileFullPath = $"{SelectedPath}{audioFileViewModel.Filename}";
                switch (audioFileViewModel.TagType)
                {
                case TagType.ID3V1:
                    ID3v2Service.RemoveTag(fileFullPath);

                    var log = LogService.Add(
                        LogMessageStatusType.Information, "ID3v1Tag was removed.");
                    LogMessageStatusType = log.LogMessageStatusType;
                    LogMessage           = log.Message;
                    break;

                case TagType.ID3V2:
                    ID3v2Service.RemoveTag(fileFullPath);

                    log = LogService.Add(
                        LogMessageStatusType.Information, "ID3v2 Tag was removed.");
                    LogMessageStatusType = log.LogMessageStatusType;
                    LogMessage           = log.Message;
                    break;
                }
                ExplorerTreeView.ExecuteSelectedNodeEvents();
            }
            else
            {
                new Exception("Not set view model reference");
            }
        }
Example #8
0
        public void InitializeControls()
        {
            CurrentPath              = Recorder.CurrentPath;
            CurrentPath.TextChanged += OnCurrentPathChanged;
            Controller = Recorder.Controller;
            Explorer   = Recorder.Explorer;
            Explorer.SelectedItemChanged += OnSelectedItemChanged;
            Explorer.ExplorerError       += OnExplorerError;
            Explorer.AddRenameListener(RenameListener);
            Recorder.Loaded += OnLoaded;

            Recorder.ReadRecordingButton.Click  += new RoutedEventHandler(ReadRecording_Click);
            Recorder.WriteRecordingButton.Click += new RoutedEventHandler(WriteRecording_Click);

            GetContextMenuItem("FileContext", "LoadRecordingItem").Click          += new RoutedEventHandler(LoadRecording_Click);
            GetContextMenuItem("FileContext", "SaveRecordingItem").Click          += new RoutedEventHandler(SaveRecording_Click);
            GetContextMenuItem("FileContext", "NewRecordingItem").Click           += new RoutedEventHandler(NewRecording_Click);
            GetContextMenuItem("FileContext", "DeleteFileButton").Click           += new RoutedEventHandler(DeleteFile_Click);
            GetContextMenuItem("FolderContext", "NewRecordingFolderButton").Click += new RoutedEventHandler(NewRecording_Click);
            GetContextMenuItem("FolderContext", "NewFolderButton").Click          += new RoutedEventHandler(NewFolder_Click);
            GetContextMenuItem("FolderContext", "DeleteFolderButton").Click       += new RoutedEventHandler(DeleteFolder_Click);
        }