Beispiel #1
0
        void FileTree_AfterSelect(object sender, TreeViewEventArgs e)
        {
            var node = fileTree.SelectedNode;

            if (node == null)
            {
                _core.SetSelectedItem(null, null);
                return;
            }

            int?number = int.TryParse(fileTree.SelectedNode?.Name, out var tempNumber) ? tempNumber : (int?)null;

            if (number.HasValue)
            {
                node = node.Parent;
            }

            string filename = "";

            while (node != _rootNode)
            {
                filename = node.Name + "\\" + filename;
                node     = node.Parent;
            }

            filename = filename.TrimEnd('\\');
            _core.SetSelectedItem(filename, number);
            var asset = _core.SelectedObject;

            textName.Text = asset?.Name;

            _activeViewer        = GetViewerForAsset(asset);
            _imageViewer.Visible = _activeViewer == _imageViewer;
            _textViewer.Visible  = _activeViewer == _textViewer;
            _soundPlayer.Visible = _activeViewer == _soundPlayer;

            UpdateAssetDescription();
        }